www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | Submodules | README | LICENSE

commit ef71d544c11f14bdb98daff8cc18050cbee98077
parent 5275dafbc9f2c45fa052308c26d32b10423bfaa4
Author: Dan Stillman <dstillman@zotero.org>
Date:   Wed, 18 Apr 2012 23:04:32 -0400

Fixes #62, Show sync progress bar only for longer syncs

Shows the progress bar only if sync takes longer than 100ms

Diffstat:
Mchrome/content/zotero/xpcom/sync.js | 30++++++++++++++++--------------
1 file changed, 16 insertions(+), 14 deletions(-)

diff --git a/chrome/content/zotero/xpcom/sync.js b/chrome/content/zotero/xpcom/sync.js @@ -1463,21 +1463,12 @@ Zotero.Sync.Server = new function () { Zotero.suppressUIUpdates = true; _updatesInProgress = true; - var progressMeter = true; - if (progressMeter) { - Zotero.showZoteroPaneProgressMeter( - Zotero.getString('sync.status.processingUpdatedData'), - false, - "chrome://zotero/skin/arrow_rotate_animated.png" - ); - } - var errorHandler = function (e) { Zotero.DB.rollbackTransaction(); Zotero.UnresponsiveScriptIndicator.enable(); - if (progressMeter) { + if (Zotero.locked) { Zotero.hideZoteroPaneOverlay(); } Zotero.suppressUIUpdates = false; @@ -1495,7 +1486,7 @@ Zotero.Sync.Server = new function () { function (xmlstr) { Zotero.UnresponsiveScriptIndicator.enable(); - if (progressMeter) { + if (Zotero.locked) { Zotero.hideZoteroPaneOverlay(); } Zotero.suppressUIUpdates = false; @@ -2559,15 +2550,26 @@ Zotero.Sync.Server.Data = new function() { } function _timeToYield() { - if (progressMeter && Date.now() - lastRepaint > repaintTime) { + if (!progressMeter) { + if (Date.now() - start > progressMeterThreshold) { + Zotero.showZoteroPaneProgressMeter( + Zotero.getString('sync.status.processingUpdatedData'), + false, + "chrome://zotero/skin/arrow_rotate_animated.png" + ); + progressMeter = true; + } + } + else if (Date.now() - lastRepaint > repaintTime) { lastRepaint = Date.now(); return true; } - return false; } - var progressMeter = Zotero.locked; + var progressMeter = false; + var progressMeterThreshold = 100; + var start = Date.now(); var repaintTime = 100; var lastRepaint = Date.now();