2009-11-10 16:24:10 +00:00
|
|
|
<?xml version="1.0"?>
|
|
|
|
|
2012-05-21 11:12:37 +00:00
|
|
|
<!-- 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/. -->
|
2009-11-10 16:24:10 +00:00
|
|
|
|
|
|
|
<?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 type="application/javascript"
|
|
|
|
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js" />
|
|
|
|
<script type="application/javascript">
|
|
|
|
<![CDATA[
|
|
|
|
|
|
|
|
let Cc = Components.classes;
|
|
|
|
let Ci = Components.interfaces;
|
|
|
|
let Cu = Components.utils;
|
|
|
|
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
|
|
|
|
|
|
|
|
SimpleTest.waitForExplicitFinish();
|
|
|
|
|
|
|
|
function onLoad() {
|
|
|
|
var wm = Cc["@mozilla.org/appshell/window-mediator;1"].getService(Ci.nsIWindowMediator);
|
|
|
|
var win = 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.height > 0, "document height should not be zero for a minimized window!");
|
|
|
|
ok(document.width > 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>
|