summaryrefslogtreecommitdiffstats
path: root/debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch')
-rw-r--r--debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch b/debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch
new file mode 100644
index 0000000000..18e45daba2
--- /dev/null
+++ b/debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch
@@ -0,0 +1,37 @@
+From: Mike Hommey <mh@glandium.org>
+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.sys.mjs | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/browser/components/sessionstore/SessionStore.sys.mjs b/browser/components/sessionstore/SessionStore.sys.mjs
+index 602986e..99cf002 100644
+--- a/browser/components/sessionstore/SessionStore.sys.mjs
++++ b/browser/components/sessionstore/SessionStore.sys.mjs
+@@ -5220,7 +5220,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 &&
+@@ -5248,9 +5248,8 @@ var SessionStoreInternal = {
+ case "minimized":
+ if (aSizeModeBeforeMinimized == "maximized") {
+ aWindow.maximize();
++ break;
+ }
+- aWindow.minimize();
+- break;
+ case "normal":
+ aWindow.restore();
+ break;