| OLD | NEW |
| 1 Basic repaint test for squashed layers. The entire squashing layer should not ne
ed repainting when only a portion of it is invalidated. Test interactively by us
ing --show-paint-rects and hovering over elements to change their color. | 1 Basic repaint test for squashed layers. The entire squashing layer should not ne
ed repainting when only a portion of it is invalidated. Test interactively by us
ing --show-paint-rects and hovering over elements to change their color. |
| 2 | 2 |
| 3 CASE 1, original layer tree: | 3 CASE 1, original layer tree: |
| 4 { | 4 { |
| 5 "bounds": [800, 600], | 5 "bounds": [800, 600], |
| 6 "children": [ | 6 "children": [ |
| 7 { | 7 { |
| 8 "bounds": [800, 600], | 8 "bounds": [800, 600], |
| 9 "contentsOpaque": true, | 9 "contentsOpaque": true, |
| 10 "drawsContent": true, | 10 "drawsContent": true, |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 46 "position": [60, 60], | 46 "position": [60, 60], |
| 47 "bounds": [100, 100], | 47 "bounds": [100, 100], |
| 48 "contentsOpaque": true, | 48 "contentsOpaque": true, |
| 49 "drawsContent": true, | 49 "drawsContent": true, |
| 50 "backgroundColor": "#808080" | 50 "backgroundColor": "#808080" |
| 51 }, | 51 }, |
| 52 { | 52 { |
| 53 "position": [140, 140], | 53 "position": [140, 140], |
| 54 "bounds": [260, 260], | 54 "bounds": [260, 260], |
| 55 "drawsContent": true, | 55 "drawsContent": true, |
| 56 "repaintRects": [ | 56 "paintInvalidations": [ |
| 57 [0, 0, 100, 100] | 57 { |
| 58 "object": "LayoutBlockFlow (positioned) DIV id='A' class='over
lap1'", |
| 59 "rect": [0, 0, 100, 100], |
| 60 "reason": "style change" |
| 61 } |
| 58 ] | 62 ] |
| 59 } | 63 } |
| 60 ] | 64 ] |
| 61 } | 65 } |
| 62 ] | 66 ] |
| 63 } | 67 } |
| 64 ] | 68 ] |
| 65 } | 69 } |
| 66 CASE 3, overlap1 and overlap2 change color: | 70 CASE 3, overlap1 and overlap2 change color: |
| 67 { | 71 { |
| (...skipping 11 matching lines...) Expand all Loading... |
| 79 "position": [60, 60], | 83 "position": [60, 60], |
| 80 "bounds": [100, 100], | 84 "bounds": [100, 100], |
| 81 "contentsOpaque": true, | 85 "contentsOpaque": true, |
| 82 "drawsContent": true, | 86 "drawsContent": true, |
| 83 "backgroundColor": "#808080" | 87 "backgroundColor": "#808080" |
| 84 }, | 88 }, |
| 85 { | 89 { |
| 86 "position": [140, 140], | 90 "position": [140, 140], |
| 87 "bounds": [260, 260], | 91 "bounds": [260, 260], |
| 88 "drawsContent": true, | 92 "drawsContent": true, |
| 89 "repaintRects": [ | 93 "paintInvalidations": [ |
| 90 [80, 80, 100, 100], | 94 { |
| 91 [0, 0, 100, 100] | 95 "object": "LayoutBlockFlow (positioned) DIV id='A' class='over
lap1'", |
| 96 "rect": [0, 0, 100, 100], |
| 97 "reason": "style change" |
| 98 }, |
| 99 { |
| 100 "object": "LayoutBlockFlow (positioned) DIV id='B' class='over
lap2'", |
| 101 "rect": [80, 80, 100, 100], |
| 102 "reason": "style change" |
| 103 } |
| 92 ] | 104 ] |
| 93 } | 105 } |
| 94 ] | 106 ] |
| 95 } | 107 } |
| 96 ] | 108 ] |
| 97 } | 109 } |
| 98 ] | 110 ] |
| 99 } | 111 } |
| 100 CASE 4, overlap2 and overlap3 change color: | 112 CASE 4, overlap2 and overlap3 change color: |
| 101 { | 113 { |
| (...skipping 11 matching lines...) Expand all Loading... |
| 113 "position": [60, 60], | 125 "position": [60, 60], |
| 114 "bounds": [100, 100], | 126 "bounds": [100, 100], |
| 115 "contentsOpaque": true, | 127 "contentsOpaque": true, |
| 116 "drawsContent": true, | 128 "drawsContent": true, |
| 117 "backgroundColor": "#808080" | 129 "backgroundColor": "#808080" |
| 118 }, | 130 }, |
| 119 { | 131 { |
| 120 "position": [140, 140], | 132 "position": [140, 140], |
| 121 "bounds": [260, 260], | 133 "bounds": [260, 260], |
| 122 "drawsContent": true, | 134 "drawsContent": true, |
| 123 "repaintRects": [ | 135 "paintInvalidations": [ |
| 124 [160, 160, 100, 100], | 136 { |
| 125 [80, 80, 100, 100] | 137 "object": "LayoutBlockFlow (positioned) DIV id='B' class='over
lap2'", |
| 138 "rect": [80, 80, 100, 100], |
| 139 "reason": "style change" |
| 140 }, |
| 141 { |
| 142 "object": "LayoutBlockFlow (positioned) DIV id='C' class='over
lap3'", |
| 143 "rect": [160, 160, 100, 100], |
| 144 "reason": "style change" |
| 145 } |
| 126 ] | 146 ] |
| 127 } | 147 } |
| 128 ] | 148 ] |
| 129 } | 149 } |
| 130 ] | 150 ] |
| 131 } | 151 } |
| 132 ] | 152 ] |
| 133 } | 153 } |
| 134 CASE 5, overlap3 and overlap1 change color: | 154 CASE 5, overlap3 and overlap1 change color: |
| 135 { | 155 { |
| (...skipping 11 matching lines...) Expand all Loading... |
| 147 "position": [60, 60], | 167 "position": [60, 60], |
| 148 "bounds": [100, 100], | 168 "bounds": [100, 100], |
| 149 "contentsOpaque": true, | 169 "contentsOpaque": true, |
| 150 "drawsContent": true, | 170 "drawsContent": true, |
| 151 "backgroundColor": "#808080" | 171 "backgroundColor": "#808080" |
| 152 }, | 172 }, |
| 153 { | 173 { |
| 154 "position": [140, 140], | 174 "position": [140, 140], |
| 155 "bounds": [260, 260], | 175 "bounds": [260, 260], |
| 156 "drawsContent": true, | 176 "drawsContent": true, |
| 157 "repaintRects": [ | 177 "paintInvalidations": [ |
| 158 [160, 160, 100, 100], | 178 { |
| 159 [0, 0, 100, 100] | 179 "object": "LayoutBlockFlow (positioned) DIV id='A' class='over
lap1'", |
| 180 "rect": [0, 0, 100, 100], |
| 181 "reason": "style change" |
| 182 }, |
| 183 { |
| 184 "object": "LayoutBlockFlow (positioned) DIV id='C' class='over
lap3'", |
| 185 "rect": [160, 160, 100, 100], |
| 186 "reason": "style change" |
| 187 } |
| 160 ] | 188 ] |
| 161 } | 189 } |
| 162 ] | 190 ] |
| 163 } | 191 } |
| 164 ] | 192 ] |
| 165 } | 193 } |
| 166 ] | 194 ] |
| 167 } | 195 } |
| 168 | 196 |
| OLD | NEW |