summaryrefslogtreecommitdiffstats
path: root/gfx/wr/wrench/reftests/scrolling/fixed-position.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'gfx/wr/wrench/reftests/scrolling/fixed-position.yaml')
-rw-r--r--gfx/wr/wrench/reftests/scrolling/fixed-position.yaml55
1 files changed, 55 insertions, 0 deletions
diff --git a/gfx/wr/wrench/reftests/scrolling/fixed-position.yaml b/gfx/wr/wrench/reftests/scrolling/fixed-position.yaml
new file mode 100644
index 0000000000..6fa099b5e3
--- /dev/null
+++ b/gfx/wr/wrench/reftests/scrolling/fixed-position.yaml
@@ -0,0 +1,55 @@
+root:
+ bounds: [0, 0, 1024, 10000]
+ scroll-offset: [0, 100]
+ items:
+ - type: stacking-context
+ bounds: [0, 0, 50, 50]
+ items:
+ # This item should not scroll out of view because it is fixed position.
+ - type: rect
+ bounds: [0, 0, 50, 50]
+ color: green
+ clip-and-scroll: root-reference-frame
+ - type: stacking-context
+ bounds: [0, 0, 50, 50]
+ transform: translate(60, 100)
+ id: 100
+ items:
+ - type: stacking-context
+ bounds: [0, 0, 50, 50]
+ items:
+ # Even though there is a custom clip-scroll ID, it should scroll,
+ # because it is fixed relative to its reference frame. The reference frame
+ # of this stacking context is the stacking context parent because it has
+ # a transformation.
+ - type: rect
+ bounds: [0, 0, 50, 50]
+ color: green
+ clip-and-scroll: 100
+ - type: stacking-context
+ bounds: [120, 0, 50, 200]
+ transform: translate(0, 0)
+ id: 101
+ items:
+ # This is similar to the previous case, but ensures that this still works
+ # even with an identity transform.
+ - type: stacking-context
+ bounds: [0, 0, 50, 200]
+ items:
+ - type: rect
+ bounds: [0, 100, 50, 50]
+ color: green
+ clip-and-scroll: 101
+ - type: stacking-context
+ bounds: [180, 0, 50, 200]
+ perspective: 1
+ id: 102
+ items:
+ # This is similar to the previous case, but for perspective.
+ - type: stacking-context
+ bounds: [0, 0, 50, 200]
+ items:
+ - type: rect
+ bounds: [0, 100, 50, 50]
+ color: green
+ clip-and-scroll: 102