summaryrefslogtreecommitdiffstats
path: root/layout/reftests/bugs/495385-2f.xhtml
diff options
context:
space:
mode:
Diffstat (limited to 'layout/reftests/bugs/495385-2f.xhtml')
-rw-r--r--layout/reftests/bugs/495385-2f.xhtml50
1 files changed, 50 insertions, 0 deletions
diff --git a/layout/reftests/bugs/495385-2f.xhtml b/layout/reftests/bugs/495385-2f.xhtml
new file mode 100644
index 000000000..3c358728c
--- /dev/null
+++ b/layout/reftests/bugs/495385-2f.xhtml
@@ -0,0 +1,50 @@
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<!-- Test that suppression works (or is turned off) for XBL content -->
+<bindings xmlns="http://www.mozilla.org/xbl">
+ <binding id="before">
+ <content>Hello<children/></content>
+ </binding>
+ <binding id="after">
+ <content><children/>Kitty</content>
+ </binding>
+ <binding id="empty1">
+ <content><div xmlns="http://www.w3.org/1999/xhtml">Hello</div><children/></content>
+ </binding>
+ <binding id="empty2">
+ <content><children/><div xmlns="http://www.w3.org/1999/xhtml">Kitty</div></content>
+ <implementation>
+ <constructor>
+ // We used to do this in an onload handler, but getAnonymousNodes is no
+ // longer accessible to content, and we can't use SpecialPowers in
+ // reftests. So we enable XBL scopes and take advantage of the fact that XBL
+ // scopes can access these functions. We apply this binding
+ // programatically to make absolutely sure this constructor runs after all the
+ // other bindings have been set up.
+ document.body.offsetHeight;
+ document.getAnonymousNodes(document.getElementById("d3"))[0].style.display = 'inline';
+ document.getAnonymousNodes(document.getElementById("d4"))[2].style.display = 'inline';
+ </constructor>
+ </implementation>
+ </binding>
+</bindings>
+<style>
+body > div { border:1px solid black; margin:1em;
+ font-family:sans-serif; letter-spacing:2px; }
+#d1 { -moz-binding:url(#before); }
+#d2 { -moz-binding:url(#after); }
+#d3 { -moz-binding:url(#empty1); }
+</style>
+<script>
+function loaded() {
+ document.getElementById('d4').style.MozBinding = "url(#empty2)";
+}
+</script>
+</head>
+<body onload="loaded()">
+ <div id="d1"> <span>Kitty</span></div>
+ <div id="d2"><span>Hello</span> </div>
+ <div id="d3"> <span>Kitty</span></div>
+ <div id="d4"><span>Hello</span> </div>
+</body>
+</html>