summaryrefslogtreecommitdiffstats
path: root/layout/reftests/xul/inactive-fixed-bg-bug1205630.xul
diff options
context:
space:
mode:
Diffstat (limited to 'layout/reftests/xul/inactive-fixed-bg-bug1205630.xul')
-rw-r--r--layout/reftests/xul/inactive-fixed-bg-bug1205630.xul36
1 files changed, 36 insertions, 0 deletions
diff --git a/layout/reftests/xul/inactive-fixed-bg-bug1205630.xul b/layout/reftests/xul/inactive-fixed-bg-bug1205630.xul
new file mode 100644
index 000000000..306338c3f
--- /dev/null
+++ b/layout/reftests/xul/inactive-fixed-bg-bug1205630.xul
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+ <!-- Test that a fixed background layer inside an inactive layer tree
+ is clipped correctly. Here, the inactive layer tree is created by
+ the SVGEffects display item built for the clip-path on the outer div.
+ The bug only reproduces in XUL because fixed backgrounds are only
+ layerized if their animated geometry root is the root frame, but
+ in HTML there's always an enclosing HTML scroll frame. -->
+ <style xmlns="http://www.w3.org/1999/xhtml"><![CDATA[
+ #inner {
+ width: 100px;
+ height: 100px;
+ background: linear-gradient(red, blue) no-repeat fixed;
+ background-size: 800px 800px;
+ }
+
+ #outer {
+ margin: 50px 50px 0;
+ width: 100px;
+ height: 100px;
+ clip-path: url(#path);
+ position: fixed;
+ }
+ ]]></style>
+ <div xmlns="http://www.w3.org/1999/xhtml" id="outer">
+ <div xmlns="http://www.w3.org/1999/xhtml" id="inner"></div>
+ </div>
+
+ <svg xmlns="http://www.w3.org/2000/svg" height="0">
+ <defs>
+ <clipPath id="path" clipPathUnits="objectBoundingBox">
+ <polygon points="0.25,0.25 0.25,0.75 0.75,0.75 0.75,0.25"/>
+ </clipPath>
+ </defs>
+ </svg>
+</window>