From af30869344edc3a0da2ac27ee6c17fbec4f66aa6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=A3o=20Gottwald?= Date: Wed, 18 Mar 2009 09:46:47 +0100 Subject: [PATCH] Bug 483403 - Temporarily disable tabstrip smooth scrolling when restoring a window. r=dietrich/zeniko --- .../components/sessionstore/src/nsSessionStore.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/browser/components/sessionstore/src/nsSessionStore.js b/browser/components/sessionstore/src/nsSessionStore.js index 6dc5611e64cd..1631ba28569f 100644 --- a/browser/components/sessionstore/src/nsSessionStore.js +++ b/browser/components/sessionstore/src/nsSessionStore.js @@ -1650,10 +1650,15 @@ SessionStoreService.prototype = { winData.tabs = []; } - var tabbrowser = aWindow.getBrowser(); + var tabbrowser = aWindow.gBrowser; var openTabCount = aOverwriteTabs ? tabbrowser.browsers.length : -1; var newTabCount = winData.tabs.length; - let tabs = []; + var tabs = []; + + // disable smooth scrolling while adding, moving, removing and selecting tabs + var tabstrip = tabbrowser.tabContainer.mTabstrip; + var smoothScroll = tabstrip.smoothScroll; + tabstrip.smoothScroll = false; // make sure that the selected tab won't be closed in order to // prevent unnecessary flickering @@ -1696,6 +1701,9 @@ SessionStoreService.prototype = { this.restoreHistoryPrecursor(aWindow, tabs, winData.tabs, (aOverwriteTabs ? (parseInt(winData.selected) || 1) : 0), 0, 0); + // set smoothScroll back to the original value + tabstrip.smoothScroll = smoothScroll; + this._notifyIfAllWindowsRestored(); },