OLD | NEW |
1 This scenario verifies that the green "container" element and lime "innerScrolli
ng" element scroll properly even though there is a blue fixed-position element l
ayered in between them. | 1 This scenario verifies that the green "container" element and lime "innerScrolli
ng" element scroll properly even though there is a blue fixed-position element l
ayered in between them. |
2 | 2 |
3 The catch is that the squashing requirements should be computed in correct paint
order, so that the green container does not accidentally position itself with r
espect to the wrong layer and not scroll. | 3 The catch is that the squashing requirements should be computed in correct paint
order, so that the green container does not accidentally position itself with r
espect to the wrong layer and not scroll. |
4 | 4 |
5 CASE 1, original layer tree: | 5 CASE 1, original layer tree: |
6 (GraphicsLayer | 6 (GraphicsLayer |
7 (bounds 785.00 4100.00) | 7 (bounds 785.00 4100.00) |
8 (children 1 | 8 (children 1 |
9 (GraphicsLayer | 9 (GraphicsLayer |
10 (bounds 785.00 4100.00) | 10 (bounds 785.00 4100.00) |
11 (contentsOpaque 1) | 11 (contentsOpaque 1) |
12 (drawsContent 1) | 12 (drawsContent 1) |
13 (children 2 | 13 (children 2 |
14 (GraphicsLayer | 14 (GraphicsLayer |
15 (bounds 400.00 400.00) | 15 (bounds 400.00 400.00) |
16 (contentsOpaque 1) | 16 (contentsOpaque 1) |
17 (drawsContent 1) | |
18 (backgroundColor #808080) | |
19 ) | 17 ) |
20 (GraphicsLayer | 18 (GraphicsLayer |
21 (position 100.00 100.00) | 19 (position 100.00 100.00) |
22 (bounds 100.00 4000.00) | 20 (bounds 100.00 4000.00) |
23 (contentsOpaque 1) | 21 (contentsOpaque 1) |
24 (drawsContent 1) | |
25 (backgroundColor #008000) | |
26 (children 2 | 22 (children 2 |
27 (GraphicsLayer | 23 (GraphicsLayer |
28 (position 0.00 50.00) | 24 (position 0.00 50.00) |
29 (bounds 200.00 100.00) | 25 (bounds 200.00 100.00) |
30 (contentsOpaque 1) | 26 (contentsOpaque 1) |
31 (drawsContent 1) | |
32 (backgroundColor #0000FF) | |
33 ) | 27 ) |
34 (GraphicsLayer | 28 (GraphicsLayer |
35 (position 100.00 0.00) | 29 (position 100.00 0.00) |
36 (bounds 100.00 100.00) | 30 (bounds 100.00 100.00) |
37 (contentsOpaque 1) | 31 (contentsOpaque 1) |
38 (drawsContent 1) | |
39 (backgroundColor #00FF00) | |
40 ) | 32 ) |
41 ) | 33 ) |
42 ) | 34 ) |
43 ) | 35 ) |
44 ) | 36 ) |
45 ) | 37 ) |
46 ) | 38 ) |
47 CASE 2, scrolling y by 10 pixels, both the "container" and "inner" should scroll
properly. | 39 CASE 2, scrolling y by 10 pixels, both the "container" and "inner" should scroll
properly. |
48 (GraphicsLayer | 40 (GraphicsLayer |
49 (bounds 785.00 4100.00) | 41 (bounds 785.00 4100.00) |
50 (children 1 | 42 (children 1 |
51 (GraphicsLayer | 43 (GraphicsLayer |
52 (bounds 785.00 4100.00) | 44 (bounds 785.00 4100.00) |
53 (contentsOpaque 1) | 45 (contentsOpaque 1) |
54 (drawsContent 1) | 46 (drawsContent 1) |
55 (children 2 | 47 (children 2 |
56 (GraphicsLayer | 48 (GraphicsLayer |
57 (position 0.00 10.00) | 49 (position 0.00 10.00) |
58 (bounds 400.00 400.00) | 50 (bounds 400.00 400.00) |
59 (contentsOpaque 1) | 51 (contentsOpaque 1) |
60 (drawsContent 1) | |
61 (backgroundColor #808080) | |
62 ) | 52 ) |
63 (GraphicsLayer | 53 (GraphicsLayer |
64 (position 100.00 100.00) | 54 (position 100.00 100.00) |
65 (bounds 100.00 4000.00) | 55 (bounds 100.00 4000.00) |
66 (contentsOpaque 1) | 56 (contentsOpaque 1) |
67 (drawsContent 1) | |
68 (backgroundColor #008000) | |
69 (children 2 | 57 (children 2 |
70 (GraphicsLayer | 58 (GraphicsLayer |
71 (position 0.00 60.00) | 59 (position 0.00 60.00) |
72 (bounds 200.00 100.00) | 60 (bounds 200.00 100.00) |
73 (contentsOpaque 1) | 61 (contentsOpaque 1) |
74 (drawsContent 1) | |
75 (backgroundColor #0000FF) | |
76 ) | 62 ) |
77 (GraphicsLayer | 63 (GraphicsLayer |
78 (position 100.00 0.00) | 64 (position 100.00 0.00) |
79 (bounds 100.00 100.00) | 65 (bounds 100.00 100.00) |
80 (contentsOpaque 1) | 66 (contentsOpaque 1) |
81 (drawsContent 1) | |
82 (backgroundColor #00FF00) | |
83 ) | 67 ) |
84 ) | 68 ) |
85 ) | 69 ) |
86 ) | 70 ) |
87 ) | 71 ) |
88 ) | 72 ) |
89 ) | 73 ) |
90 CASE 3, scrolling y further so that "inner" no longer overlaps the fixed-pos lay
er, then the stacking context of "container" includes the "innerScrolling" layer
, and doubles in width: | 74 CASE 3, scrolling y further so that "inner" no longer overlaps the fixed-pos lay
er, then the stacking context of "container" includes the "innerScrolling" layer
, and doubles in width: |
91 (GraphicsLayer | 75 (GraphicsLayer |
92 (bounds 785.00 4100.00) | 76 (bounds 785.00 4100.00) |
93 (children 1 | 77 (children 1 |
94 (GraphicsLayer | 78 (GraphicsLayer |
95 (bounds 785.00 4100.00) | 79 (bounds 785.00 4100.00) |
96 (contentsOpaque 1) | 80 (contentsOpaque 1) |
97 (drawsContent 1) | 81 (drawsContent 1) |
98 (children 2 | 82 (children 2 |
99 (GraphicsLayer | 83 (GraphicsLayer |
100 (position 0.00 110.00) | 84 (position 0.00 110.00) |
101 (bounds 400.00 400.00) | 85 (bounds 400.00 400.00) |
102 (contentsOpaque 1) | 86 (contentsOpaque 1) |
103 (drawsContent 1) | |
104 (backgroundColor #808080) | |
105 ) | 87 ) |
106 (GraphicsLayer | 88 (GraphicsLayer |
107 (position 100.00 100.00) | 89 (position 100.00 100.00) |
108 (bounds 200.00 4000.00) | 90 (bounds 200.00 4000.00) |
109 (drawsContent 1) | 91 (drawsContent 1) |
110 (backgroundColor #008000) | 92 (backgroundColor #008000) |
111 (repaint rects | |
112 ) | |
113 (children 1 | 93 (children 1 |
114 (GraphicsLayer | 94 (GraphicsLayer |
115 (position 0.00 160.00) | 95 (position 0.00 160.00) |
116 (bounds 200.00 100.00) | 96 (bounds 200.00 100.00) |
117 (contentsOpaque 1) | 97 (contentsOpaque 1) |
118 (drawsContent 1) | |
119 (backgroundColor #0000FF) | |
120 ) | 98 ) |
121 ) | 99 ) |
122 ) | 100 ) |
123 ) | 101 ) |
124 ) | 102 ) |
125 ) | 103 ) |
126 ) | 104 ) |
127 | 105 |
OLD | NEW |