Source code

Revision control

Copy as Markdown

Other Tools

<?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"?>
<!--
-->
<window title="Mozilla Bug 800817"
<!-- test results are displayed in the html:body -->
target="_blank">Mozilla Bug 800817</a>
</body>
<!-- test code goes here -->
<script type="application/javascript">
<![CDATA[
/** Test for Bug 800817 **/
function sendClick(win) {
var wu = win.windowUtils;
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");
window.arguments[0].info("Testing...");
b1.contentWindow.focus();
window.arguments[0].is(document.activeElement, b1,
"Focused first iframe");
var didCallDummy = false;
b2.contentWindow.addEventListener("mousedown", function(e) { didCallDummy = true; });
sendClick(b2.contentWindow);
window.arguments[0].ok(didCallDummy, "dummy mousedown handler should fire");
window.arguments[0].is(document.activeElement, b2,
"Focus shifted to second iframe");
b1.contentWindow.focus();
window.arguments[0].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);
window.arguments[0].ok(didCallListener, "mousedown handler should fire");
window.arguments[0].is(document.activeElement, b1,
"Did not move focus to the second iframe");
window.close();
window.arguments[0].finishedTests();
}
SimpleTest.waitForFocus(runTests);
]]>
</script>
id="b1" type="content" src="about:blank"
style="width: 300px; height: 550px; border: 1px solid black;"/>
id="b2" type="content" src="about:blank"
style="width: 300px; height: 550px; border: 1px solid black;"/>
</window>