Source code

Revision control

Copy as Markdown

Other Tools

<?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"
width="300"
height="300"
onload="onLoad();"
title="Window State Tests">
<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>
<p id="display"></p>
<div id="content" style="display: none"></div>
<pre id="test"></pre>
</body>
</window>