From: Mike Hommey Date: Thu, 12 Nov 2009 17:18:31 +0100 Subject: Avoid wrong sessionstore data to keep windows out of user sight It happens that sessionstore can keep wrong information for the window position or minimized state. Workaround this until the real bug is found and fixed (probably in xulrunner). Closes: #552426, #553453 --- browser/components/sessionstore/SessionStore.jsm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/browser/components/sessionstore/SessionStore.jsm b/browser/components/sessionstore/SessionStore.jsm index 650a597..de13b8a 100644 --- a/browser/components/sessionstore/SessionStore.jsm +++ b/browser/components/sessionstore/SessionStore.jsm @@ -5012,7 +5012,7 @@ var SessionStoreInternal = { // _getWindowDimension. let desktopToCssScale = aWindow.desktopToDeviceScale / aWindow.devicePixelRatio; - aWindow.moveTo(aLeft * desktopToCssScale, aTop * desktopToCssScale); + aWindow.moveTo((aLeft < -aWidth) ? 0 : aLeft * desktopToCssScale, (aTop < -aHeight) ? 0 : aTop * desktopToCssScale); } if ( aWidth && @@ -5041,9 +5041,8 @@ var SessionStoreInternal = { case "minimized": if (aSizeModeBeforeMinimized == "maximized") { aWindow.maximize(); + break; } - aWindow.minimize(); - break; case "normal": aWindow.restore(); break;