diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 17:32:43 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 17:32:43 +0000 |
commit | 6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch) | |
tree | a68f146d7fa01f0134297619fbe7e33db084e0aa /widget/tests/window_state_windows.xhtml | |
parent | Initial commit. (diff) | |
download | thunderbird-upstream.tar.xz thunderbird-upstream.zip |
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | widget/tests/window_state_windows.xhtml | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/widget/tests/window_state_windows.xhtml b/widget/tests/window_state_windows.xhtml new file mode 100644 index 0000000000..60989db144 --- /dev/null +++ b/widget/tests/window_state_windows.xhtml @@ -0,0 +1,80 @@ +<?xml version="1.0"?> + +<!-- This Source Code Form is subject to the terms of the Mozilla Public + - License, v. 2.0. If a copy of the MPL was not distributed with this + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> + +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> +<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" type="text/css"?> + +<window id="NativeWindow" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + width="300" + height="300" + onload="onLoad();" + title="Window State Tests"> + + <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js" /> + <script type="application/javascript"> + <![CDATA[ + + SimpleTest.waitForExplicitFinish(); + + function onLoad() { + var win = Services.wm.getMostRecentWindow("navigator:browser"); + + /* + switch(win.windowState) { + case win.STATE_FULLSCREEN: + dump("STATE_FULLSCREEN \n"); + break; + case win.STATE_MAXIMIZED: + dump("STATE_MAXIMIZED \n"); + break; + case win.STATE_MINIMIZED: + dump("STATE_MINIMIZED \n"); + break; + case win.STATE_NORMAL: + dump("STATE_NORMAL \n"); + break; + } + */ + + // Make sure size mode changes are reflected in the widget. + win.restore(); + ok(win.windowState == win.STATE_NORMAL, "window state is restored."); + win.minimize(); + ok(win.windowState == win.STATE_MINIMIZED, "window state is minimized."); + + // Windows resizes children to 0x0. Code in nsWindow filters these changes out. Without + // this all sorts of screwy things can happen in child widgets. + ok(document.documentElement.clientHeight > 0, "document height should not be zero for a minimized window!"); + ok(document.documentElement.clientWidth > 0, "document width should not be zero for a minimized window!"); + + // Make sure size mode changes are reflected in the widget. + win.restore(); + ok(win.windowState == win.STATE_NORMAL, "window state is restored."); + win.maximize(); + ok(win.windowState == win.STATE_MAXIMIZED, "window state is maximized."); + win.restore(); + ok(win.windowState == win.STATE_NORMAL, "window state is restored."); + + /* + dump(win.screenX + "\n"); + win.minimize(); + dump(win.screenX + "\n"); + win.restore(); + dump(win.screenX + "\n"); + */ + + SimpleTest.finish(); + } + + ]]> + </script> + <body xmlns="http://www.w3.org/1999/xhtml"> + <p id="display"></p> + <div id="content" style="display: none"></div> + <pre id="test"></pre> + </body> +</window> |