| 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 |