summaryrefslogtreecommitdiff
path: root/dom/tests/mochitest/chrome/file_bug799299.xul
diff options
context:
space:
mode:
Diffstat (limited to 'dom/tests/mochitest/chrome/file_bug799299.xul')
-rw-r--r--dom/tests/mochitest/chrome/file_bug799299.xul66
1 files changed, 66 insertions, 0 deletions
diff --git a/dom/tests/mochitest/chrome/file_bug799299.xul b/dom/tests/mochitest/chrome/file_bug799299.xul
new file mode 100644
index 0000000000..2bbb0a23a3
--- /dev/null
+++ b/dom/tests/mochitest/chrome/file_bug799299.xul
@@ -0,0 +1,66 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/css" href="chrome://global/skin"?>
+<?xml-stylesheet type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"?>
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=799299
+-->
+<window title="Mozilla Bug 799299"
+ xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+ <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
+ <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/EventUtils.js"/>
+
+ <!-- test results are displayed in the html:body -->
+ <body xmlns="http://www.w3.org/1999/xhtml">
+ <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=799299"
+ target="_blank">Mozilla Bug 799299</a>
+ </body>
+
+ <!-- test code goes here -->
+ <script type="application/javascript">
+ <![CDATA[
+ /** Test for Bug 799299 **/
+
+ function sendClick(win) {
+ var wu = win.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
+ .getInterface(Components.interfaces.nsIDOMWindowUtils);
+ wu.sendMouseEventToWindow("mousedown", 10, 10, 0, 0, 0);
+ wu.sendMouseEventToWindow("mouseup", 10, 10, 0, 0, 0);
+ }
+
+ function runTests() {
+ var b1 = document.getElementById("b1");
+ var b2 = document.getElementById("b2");
+ b1.contentWindow.focus();
+ opener.wrappedJSObject.is(document.activeElement, b1,
+ "Focused first iframe");
+
+ var didCallDummy = false;
+ b2.contentWindow.addEventListener("mousedown", function(e) { didCallDummy = true; });
+ sendClick(b2.contentWindow);
+ opener.wrappedJSObject.ok(didCallDummy, "dummy mousedown handler should fire");
+ opener.wrappedJSObject.is(document.activeElement, b2,
+ "Focus shifted to second iframe");
+
+ b1.contentWindow.focus();
+ opener.wrappedJSObject.is(document.activeElement, b1,
+ "Re-focused first iframe for the first time");
+
+ var didCallListener = false;
+ b2.contentWindow.addEventListener("mousedown", function(e) { didCallListener = true; e.preventDefault(); });
+ sendClick(b2.contentWindow);
+ opener.wrappedJSObject.ok(didCallListener, "mousedown handler should fire");
+ opener.wrappedJSObject.is(document.activeElement, b2,
+ "focus should move to the second iframe");
+
+ window.close();
+ opener.wrappedJSObject.SimpleTest.finish();
+ }
+
+ SimpleTest.waitForFocus(runTests);
+ ]]>
+ </script>
+ <hbox flex="1">
+ <browser id="b1" type="content" src="about:blank" flex="1" style="border: 1px solid black;"/>
+ <browser id="b2" type="content" src="about:blank" flex="1" style="border: 1px solid black;"/>
+ </hbox>
+</window>