From bf748eafec58ae4df3b9ef7bcfece357528eda46 Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 17:06:18 +0100 Subject: [PATCH 01/11] Correct width for vertical tab content --- themes/tiddlywiki/vanilla/base.tid | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/themes/tiddlywiki/vanilla/base.tid b/themes/tiddlywiki/vanilla/base.tid index 2edfe36e0..6203bd19e 100644 --- a/themes/tiddlywiki/vanilla/base.tid +++ b/themes/tiddlywiki/vanilla/base.tid @@ -1135,8 +1135,8 @@ canvas.tw-edit-bitmapeditor { padding-top: 0; padding-left: 14px; border-left: 1px solid <>; - -webkit-flex: 0 0 84%; - flex: 0 0 84%; + -webkit-flex: 1 0 70%; + flex: 1 0 70%; } .tw-sidebar-lists .tw-tab-buttons button.tw-tab-selected { From 554f23530589ac666d1a423239768d2d41bfd4fc Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 17:09:49 +0100 Subject: [PATCH 02/11] Update dates for 5.0.14 --- editions/tw5.com/tiddlers/HelloThere.tid | 2 +- editions/tw5.com/tiddlers/Release 5.0.14beta.tid | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/editions/tw5.com/tiddlers/HelloThere.tid b/editions/tw5.com/tiddlers/HelloThere.tid index 550d3db39..92bce4cf5 100644 --- a/editions/tw5.com/tiddlers/HelloThere.tid +++ b/editions/tw5.com/tiddlers/HelloThere.tid @@ -1,5 +1,5 @@ created: 20130822170200000 -modified: 20140811224027280 +modified: 20140813164027280 tags: introduction title: HelloThere type: text/vnd.tiddlywiki diff --git a/editions/tw5.com/tiddlers/Release 5.0.14beta.tid b/editions/tw5.com/tiddlers/Release 5.0.14beta.tid index 7750bf099..a346bfd18 100644 --- a/editions/tw5.com/tiddlers/Release 5.0.14beta.tid +++ b/editions/tw5.com/tiddlers/Release 5.0.14beta.tid @@ -1,9 +1,10 @@ caption: 5.0.14-beta created: 20140518150234142 -modified: 20140811153116300 +modified: 20140813153116300 tags: releasenote title: Release 5.0.14-beta type: text/vnd.tiddlywiki +released: 201408131731 //[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.0.13-beta...v5.0.14-beta]]// From 932d3950c88642814fb0d75691f34e4fad830a21 Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 17:12:42 +0100 Subject: [PATCH 03/11] Version number update for 5.0.14-beta --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7caec6065..711c95c8d 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "tiddlywiki", "preferGlobal": "true", - "version": "5.0.14-prerelease", + "version": "5.0.14-beta", "author": "Jeremy Ruston ", "description": "a non-linear personal web notebook", "contributors": [ From 2bdf84e58f4105f3bc1025d80652667e73429abe Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 19:13:30 +0100 Subject: [PATCH 04/11] Preparing for 5.0.15-beta --- .../tw5.com/tiddlers/Release 5.0.14beta.tid | 2 +- .../tw5.com/tiddlers/Release 5.0.15beta.tid | 28 +++++++++++++++++++ editions/tw5.com/tiddlers/ReleaseHistory.tid | 2 +- package.json | 2 +- 4 files changed, 31 insertions(+), 3 deletions(-) create mode 100644 editions/tw5.com/tiddlers/Release 5.0.15beta.tid diff --git a/editions/tw5.com/tiddlers/Release 5.0.14beta.tid b/editions/tw5.com/tiddlers/Release 5.0.14beta.tid index a346bfd18..0a4c13d43 100644 --- a/editions/tw5.com/tiddlers/Release 5.0.14beta.tid +++ b/editions/tw5.com/tiddlers/Release 5.0.14beta.tid @@ -1,5 +1,5 @@ caption: 5.0.14-beta -created: 20140518150234142 +created: 20140718150234142 modified: 20140813153116300 tags: releasenote title: Release 5.0.14-beta diff --git a/editions/tw5.com/tiddlers/Release 5.0.15beta.tid b/editions/tw5.com/tiddlers/Release 5.0.15beta.tid new file mode 100644 index 000000000..11c642e42 --- /dev/null +++ b/editions/tw5.com/tiddlers/Release 5.0.15beta.tid @@ -0,0 +1,28 @@ +caption: 5.0.15-beta +created: 20140818150234142 +modified: 20140813153116300 +tags: releasenote +title: Release 5.0.15-beta +type: text/vnd.tiddlywiki + +//[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.0.14-beta...v5.0.15-beta]]// + +!! Major Changes + +!! Usability Improvements + +* + +!! Hackability Improvements + +* + +!! Bug Fixes + +* + +!! Contributors + +[[@Jermolene|https://github.com/Jermolene]] would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: + +* [[@BramChen|https://github.com/BramChen]] diff --git a/editions/tw5.com/tiddlers/ReleaseHistory.tid b/editions/tw5.com/tiddlers/ReleaseHistory.tid index d11e924d0..d7076c5c1 100644 --- a/editions/tw5.com/tiddlers/ReleaseHistory.tid +++ b/editions/tw5.com/tiddlers/ReleaseHistory.tid @@ -5,4 +5,4 @@ type: text/vnd.tiddlywiki Here are the details of recent releases of TiddlyWiki5. See [[TiddlyWiki5 Versioning]] for details of how releases are named. -<> +<> diff --git a/package.json b/package.json index 711c95c8d..144290fba 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "tiddlywiki", "preferGlobal": "true", - "version": "5.0.14-beta", + "version": "5.0.15-prerelease", "author": "Jeremy Ruston ", "description": "a non-linear personal web notebook", "contributors": [ From 57ab9f6167e8adf9cef4991031e50519dfd7f392 Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 19:14:23 +0100 Subject: [PATCH 05/11] Translatability for the unsaved changes message Another bit of #491 --- core/language/en-GB/Misc.multids | 1 + core/modules/startup/startup.js | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/core/language/en-GB/Misc.multids b/core/language/en-GB/Misc.multids index a58bf5bd5..58f07beff 100644 --- a/core/language/en-GB/Misc.multids +++ b/core/language/en-GB/Misc.multids @@ -30,3 +30,4 @@ TagManager/Colour/Heading: Colour TagManager/Count/Heading: Count TagManager/Icon/Heading: Icon TagManager/Tag/Heading: Tag +UnsavedChangesWarning: You have unsaved changes in TiddlyWiki diff --git a/core/modules/startup/startup.js b/core/modules/startup/startup.js index a7f4c583f..c4f93192d 100755 --- a/core/modules/startup/startup.js +++ b/core/modules/startup/startup.js @@ -58,7 +58,7 @@ exports.startup = function() { window.addEventListener("beforeunload",function(event) { var confirmationMessage = undefined; if($tw.syncer.isDirty()) { - confirmationMessage = "You have unsaved changes in TiddlyWiki"; + confirmationMessage = $tw.language.getString("UnsavedChangesWarning"); event.returnValue = confirmationMessage; // Gecko } return confirmationMessage; From c9ce606b7ceec76476479f7d856a25e0111c9ec1 Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 19:29:00 +0100 Subject: [PATCH 06/11] Move the unsaved changes warning into the syncer --- core/modules/startup/startup.js | 9 --------- core/modules/syncer.js | 11 +++++++++++ 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/core/modules/startup/startup.js b/core/modules/startup/startup.js index c4f93192d..a6d16c8ad 100755 --- a/core/modules/startup/startup.js +++ b/core/modules/startup/startup.js @@ -54,15 +54,6 @@ exports.startup = function() { $tw.syncer = new $tw.Syncer({wiki: $tw.wiki}); // Host-specific startup if($tw.browser) { - // Set up our beforeunload handler - window.addEventListener("beforeunload",function(event) { - var confirmationMessage = undefined; - if($tw.syncer.isDirty()) { - confirmationMessage = $tw.language.getString("UnsavedChangesWarning"); - event.returnValue = confirmationMessage; // Gecko - } - return confirmationMessage; - }); // Install the popup manager $tw.popup = new $tw.utils.Popup({ rootElement: document.body diff --git a/core/modules/syncer.js b/core/modules/syncer.js index 6600573fb..3d6081008 100644 --- a/core/modules/syncer.js +++ b/core/modules/syncer.js @@ -45,6 +45,17 @@ function Syncer(options) { this.wiki.addEventListener("change",function(changes) { self.syncToServer(changes); }); + // Set up our beforeunload handler + if($tw.browser) { + window.addEventListener("beforeunload",function(event) { + var confirmationMessage = undefined; + if(self.isDirty()) { + confirmationMessage = $tw.language.getString("UnsavedChangesWarning"); + event.returnValue = confirmationMessage; // Gecko + } + return confirmationMessage; + }); + } // Listen out for lazyLoad events if(this.syncadaptor) { this.wiki.addEventListener("lazyLoad",function(title) { From 34461cb2fe554331a0269fd7795b1d6a879fcba9 Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 19:59:48 +0100 Subject: [PATCH 07/11] Fix unclickable download link in upgrade wizard --- plugins/tiddlywiki/upgrade/UpgradeWizard.tid | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/plugins/tiddlywiki/upgrade/UpgradeWizard.tid b/plugins/tiddlywiki/upgrade/UpgradeWizard.tid index 130ee2ce6..30f955b3f 100644 --- a/plugins/tiddlywiki/upgrade/UpgradeWizard.tid +++ b/plugins/tiddlywiki/upgrade/UpgradeWizard.tid @@ -15,10 +15,6 @@ Drag a ~TiddlyWiki file here to upgrade it or click to pick a file <$browse/> ---- - -//Your data will not leave your browser. [[Download|http://tiddlywiki.com/upgrade.html]] this upgrader to use it offline// - <$reveal state="$:/Import!!status" type="match" text="pending"> @@ -49,8 +45,10 @@ For help and support, visit [[the TiddlyWiki discussion forum|http://groups.goog -//(version <>)// - +version <> + +//Your data will not leave your browser. Download this upgrader to use it offline// + From d16bff77872e618aa0d50d1e64241a62592552f0 Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 20:06:44 +0100 Subject: [PATCH 08/11] Move construction of rootwidget into main startup --- core/modules/startup/rootwidget.js | 8 -------- core/modules/startup/startup.js | 8 ++++++++ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/core/modules/startup/rootwidget.js b/core/modules/startup/rootwidget.js index 222950825..103b4cf7f 100644 --- a/core/modules/startup/rootwidget.js +++ b/core/modules/startup/rootwidget.js @@ -22,14 +22,6 @@ exports.synchronous = true; var widget = require("$:/core/modules/widgets/widget.js"); exports.startup = function() { - // Create a root widget for attaching event handlers. By using it as the parentWidget for another widget tree, one can reuse the event handlers - $tw.rootWidget = new widget.widget({ - type: "widget", - children: [] - },{ - wiki: $tw.wiki, - document: document - }); // Install the modal message mechanism $tw.modal = new $tw.utils.Modal($tw.wiki); $tw.rootWidget.addEventListener("tw-modal",function(event) { diff --git a/core/modules/startup/startup.js b/core/modules/startup/startup.js index a6d16c8ad..e6999da69 100755 --- a/core/modules/startup/startup.js +++ b/core/modules/startup/startup.js @@ -50,6 +50,14 @@ exports.startup = function() { }); // Clear outstanding tiddler store change events to avoid an unnecessary refresh cycle at startup $tw.wiki.clearTiddlerEventQueue(); + // Create a root widget for attaching event handlers. By using it as the parentWidget for another widget tree, one can reuse the event handlers + $tw.rootWidget = new widget.widget({ + type: "widget", + children: [] + },{ + wiki: $tw.wiki, + document: document + }); // Set up the syncer object $tw.syncer = new $tw.Syncer({wiki: $tw.wiki}); // Host-specific startup From 7c1cb97f7fb6d6d8f3ec15ee96c299486814c992 Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 20:07:08 +0100 Subject: [PATCH 09/11] Move syncer-browser startup handling into syncer.js --- core/modules/startup/syncer-browser.js | 34 -------------------------- core/modules/syncer.js | 15 ++++++++++-- 2 files changed, 13 insertions(+), 36 deletions(-) delete mode 100644 core/modules/startup/syncer-browser.js diff --git a/core/modules/startup/syncer-browser.js b/core/modules/startup/syncer-browser.js deleted file mode 100644 index a79c5e631..000000000 --- a/core/modules/startup/syncer-browser.js +++ /dev/null @@ -1,34 +0,0 @@ -/*\ -title: $:/core/modules/startup/syncer-browser.js -type: application/javascript -module-type: startup - -Startup handling - -\*/ -(function(){ - -/*jslint node: true, browser: true */ -/*global $tw: false */ -"use strict"; - -// Export name and synchronous status -exports.name = "syncer-browser"; -exports.platforms = ["browser"]; -exports.after = ["rootwidget"]; -exports.synchronous = true; - -exports.startup = function() { - // Listen out for login/logout/refresh events in the browser - $tw.rootWidget.addEventListener("tw-login",function() { - $tw.syncer.handleLoginEvent(); - }); - $tw.rootWidget.addEventListener("tw-logout",function() { - $tw.syncer.handleLogoutEvent(); - }); - $tw.rootWidget.addEventListener("tw-server-refresh",function() { - $tw.syncer.handleRefreshEvent(); - }); -}; - -})(); diff --git a/core/modules/syncer.js b/core/modules/syncer.js index 3d6081008..542bd0fc1 100644 --- a/core/modules/syncer.js +++ b/core/modules/syncer.js @@ -45,8 +45,9 @@ function Syncer(options) { this.wiki.addEventListener("change",function(changes) { self.syncToServer(changes); }); - // Set up our beforeunload handler + // Browser event handlers if($tw.browser) { + // Set up our beforeunload handler window.addEventListener("beforeunload",function(event) { var confirmationMessage = undefined; if(self.isDirty()) { @@ -55,6 +56,16 @@ function Syncer(options) { } return confirmationMessage; }); + // Listen out for login/logout/refresh events in the browser + $tw.rootWidget.addEventListener("tw-login",function() { + $tw.syncer.handleLoginEvent(); + }); + $tw.rootWidget.addEventListener("tw-logout",function() { + $tw.syncer.handleLogoutEvent(); + }); + $tw.rootWidget.addEventListener("tw-server-refresh",function() { + $tw.syncer.handleRefreshEvent(); + }); } // Listen out for lazyLoad events if(this.syncadaptor) { @@ -509,7 +520,7 @@ Syncer.prototype.chooseNextTask = function() { // Exclude the task if it is a save and the tiddler has been modified recently, but not hit the fallback time if(task.type === "save" && (now - task.lastModificationTime) < self.throttleInterval && (now - task.queueTime) < self.fallbackInterval) { - return; + return; } // Exclude the task if it is newer than the current best candidate if(candidateTask && candidateTask.queueTime < task.queueTime) { From 449edf99b54075db60d7d243400e342474220bf1 Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 20:20:58 +0100 Subject: [PATCH 10/11] Fix rootwidget handling --- core/modules/startup/password.js | 2 +- core/modules/startup/rootwidget.js | 4 +--- core/modules/startup/startup.js | 18 +++++++++++------- 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/core/modules/startup/password.js b/core/modules/startup/password.js index a6d586401..3ff7e26c7 100644 --- a/core/modules/startup/password.js +++ b/core/modules/startup/password.js @@ -15,7 +15,7 @@ Password handling // Export name and synchronous status exports.name = "password"; exports.platforms = ["browser"]; -exports.after = ["rootwidget"]; +exports.after = ["startup"]; exports.synchronous = true; exports.startup = function() { diff --git a/core/modules/startup/rootwidget.js b/core/modules/startup/rootwidget.js index 103b4cf7f..8bce552b5 100644 --- a/core/modules/startup/rootwidget.js +++ b/core/modules/startup/rootwidget.js @@ -15,12 +15,10 @@ Setup the root widget and the core root widget handlers // Export name and synchronous status exports.name = "rootwidget"; exports.platforms = ["browser"]; -exports.after = ["load-modules"]; +exports.after = ["startup"]; exports.before = ["story"]; exports.synchronous = true; -var widget = require("$:/core/modules/widgets/widget.js"); - exports.startup = function() { // Install the modal message mechanism $tw.modal = new $tw.utils.Modal($tw.wiki); diff --git a/core/modules/startup/startup.js b/core/modules/startup/startup.js index e6999da69..6facee2c4 100755 --- a/core/modules/startup/startup.js +++ b/core/modules/startup/startup.js @@ -20,6 +20,8 @@ exports.synchronous = true; // Set to `true` to enable performance instrumentation var PERFORMANCE_INSTRUMENTATION = false; +var widget = require("$:/core/modules/widgets/widget.js"); + exports.startup = function() { var modules,n,m,f; if($tw.browser) { @@ -51,13 +53,15 @@ exports.startup = function() { // Clear outstanding tiddler store change events to avoid an unnecessary refresh cycle at startup $tw.wiki.clearTiddlerEventQueue(); // Create a root widget for attaching event handlers. By using it as the parentWidget for another widget tree, one can reuse the event handlers - $tw.rootWidget = new widget.widget({ - type: "widget", - children: [] - },{ - wiki: $tw.wiki, - document: document - }); + if($tw.browser) { + $tw.rootWidget = new widget.widget({ + type: "widget", + children: [] + },{ + wiki: $tw.wiki, + document: document + }); + } // Set up the syncer object $tw.syncer = new $tw.Syncer({wiki: $tw.wiki}); // Host-specific startup From 35fcdd270e2745eabd50e96082f53b80ef7d45b5 Mon Sep 17 00:00:00 2001 From: Jermolene Date: Wed, 13 Aug 2014 20:25:23 +0100 Subject: [PATCH 11/11] Move syncer event handlers into syncer module --- core/modules/startup/rootwidget.js | 21 --------------------- core/modules/syncer.js | 21 +++++++++++++++++++++ 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/core/modules/startup/rootwidget.js b/core/modules/startup/rootwidget.js index 8bce552b5..f28d5b776 100644 --- a/core/modules/startup/rootwidget.js +++ b/core/modules/startup/rootwidget.js @@ -35,27 +35,6 @@ exports.startup = function() { $tw.rootWidget.addEventListener("tw-scroll",function(event) { $tw.pageScroller.handleEvent(event); }); - // Install the save action handlers - $tw.rootWidget.addEventListener("tw-save-wiki",function(event) { - $tw.syncer.saveWiki({ - template: event.param, - downloadType: "text/plain" - }); - }); - $tw.rootWidget.addEventListener("tw-auto-save-wiki",function(event) { - $tw.syncer.saveWiki({ - method: "autosave", - template: event.param, - downloadType: "text/plain" - }); - }); - $tw.rootWidget.addEventListener("tw-download-file",function(event) { - $tw.syncer.saveWiki({ - method: "download", - template: event.param, - downloadType: "text/plain" - }); - }); var fullscreen = $tw.utils.getFullScreenApis(); if(fullscreen) { $tw.rootWidget.addEventListener("tw-full-screen",function(event) { diff --git a/core/modules/syncer.js b/core/modules/syncer.js index 542bd0fc1..4d9fa6c5b 100644 --- a/core/modules/syncer.js +++ b/core/modules/syncer.js @@ -66,6 +66,27 @@ function Syncer(options) { $tw.rootWidget.addEventListener("tw-server-refresh",function() { $tw.syncer.handleRefreshEvent(); }); + // Install the save action handlers + $tw.rootWidget.addEventListener("tw-save-wiki",function(event) { + $tw.syncer.saveWiki({ + template: event.param, + downloadType: "text/plain" + }); + }); + $tw.rootWidget.addEventListener("tw-auto-save-wiki",function(event) { + $tw.syncer.saveWiki({ + method: "autosave", + template: event.param, + downloadType: "text/plain" + }); + }); + $tw.rootWidget.addEventListener("tw-download-file",function(event) { + $tw.syncer.saveWiki({ + method: "download", + template: event.param, + downloadType: "text/plain" + }); + }); } // Listen out for lazyLoad events if(this.syncadaptor) {