summaryrefslogtreecommitdiffstats
path: root/dom/tests/mochitest/chrome/test_focus_switchbinding.xul
diff options
context:
space:
mode:
Diffstat (limited to 'dom/tests/mochitest/chrome/test_focus_switchbinding.xul')
-rw-r--r--dom/tests/mochitest/chrome/test_focus_switchbinding.xul57
1 files changed, 57 insertions, 0 deletions
diff --git a/dom/tests/mochitest/chrome/test_focus_switchbinding.xul b/dom/tests/mochitest/chrome/test_focus_switchbinding.xul
new file mode 100644
index 000000000..2f3e0c944
--- /dev/null
+++ b/dom/tests/mochitest/chrome/test_focus_switchbinding.xul
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
+<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" type="text/css"?>
+
+<window title="Focus Switch Binding Test"
+ xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+
+ <script type="application/javascript"
+ src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
+
+<script>
+SimpleTest.waitForExplicitFinish();
+
+function switchBinding()
+{
+ $("box").style.MozBinding = "url(#second)";
+}
+</script>
+
+<xbl:bindings xmlns:xbl="http://www.mozilla.org/xbl"
+ xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+ <xbl:binding id="first">
+ <xbl:content>
+ <xul:button label="First"/>
+ </xbl:content>
+ <xbl:implementation>
+ <xbl:constructor>
+ document.getAnonymousNodes(this)[0].focus();
+ setTimeout(switchBinding, 0);
+ </xbl:constructor>
+ </xbl:implementation>
+ </xbl:binding>
+ <xbl:binding id="second">
+ <xbl:content>
+ <xul:button label="Second"/>
+ </xbl:content>
+ <xbl:implementation>
+ <xbl:constructor>
+ $("after").focus();
+ </xbl:constructor>
+ </xbl:implementation>
+ </xbl:binding>
+</xbl:bindings>
+
+<box id="box" style="-moz-binding: url(#first)"/>
+<button id="after" label="After" onfocus="is(document.activeElement, $('after'), 'focus set'); SimpleTest.finish()"/>
+
+<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>