OLD | NEW |
| 1 <!-- Based on compositing/repaint/fixed-pos-inside-composited-intermediate-layer
.html --> |
1 <!DOCTYPE html> | 2 <!DOCTYPE html> |
2 <html> | 3 <html> |
3 | 4 |
4 <head> | 5 <head> |
5 <script src="../../fast/repaint/resources/text-based-repaint.js"></script> | 6 <script src="resources/paint-invalidation-test.js"></script> |
6 <style> | 7 <style> |
7 | 8 |
8 .compositedBehind { | 9 .compositedBehind { |
9 width: 500px; | 10 width: 500px; |
10 height: 500px; | 11 height: 500px; |
11 transform: translatez(0); | 12 transform: translatez(0); |
12 background-color: cyan; | 13 background-color: cyan; |
13 } | 14 } |
14 | 15 |
15 .containerOverlapsComposited { | 16 .containerOverlapsComposited { |
(...skipping 16 matching lines...) Expand all Loading... |
32 } | 33 } |
33 | 34 |
34 </style> | 35 </style> |
35 | 36 |
36 <script> | 37 <script> |
37 if (window.internals) { | 38 if (window.internals) { |
38 /* Note carefully, compositing for fixed position is _disabled_ here
*/ | 39 /* Note carefully, compositing for fixed position is _disabled_ here
*/ |
39 internals.settings.setPreferCompositingToLCDTextEnabled(false); | 40 internals.settings.setPreferCompositingToLCDTextEnabled(false); |
40 } | 41 } |
41 | 42 |
42 function repaintTest() { | 43 window.expectedPaintInvalidationObjects = [ |
| 44 "LayoutBlockFlow (positioned) DIV class='fixed'", |
| 45 ]; |
| 46 function paintInvalidationTest() { |
43 window.scrollTo(0, 100); | 47 window.scrollTo(0, 100); |
44 } | 48 } |
45 </script> | 49 </script> |
46 | 50 |
47 </head> | 51 </head> |
48 | 52 |
49 | 53 |
50 | 54 |
51 <body onload="runRepaintTest()"> | 55 <body onload="runPaintInvalidationTest()"> |
52 <!-- | 56 <!-- |
53 Among other duplicate bugs: https://code.google.com/p/chromium/issues/det
ail?id=128375 | 57 Among other duplicate bugs: https://code.google.com/p/chromium/issues/det
ail?id=128375 |
54 A non-composited fixed-position element can get grouped into a composited
container. | 58 A non-composited fixed-position element can get grouped into a composited
container. |
55 In this case, repaint invalidations were incorrectly going to the LayoutV
iew instead | 59 In this case, repaint invalidations were incorrectly going to the LayoutV
iew instead |
56 of the composited container. The incorrect result was that the fixed-pos
ition element | 60 of the composited container. The incorrect result was that the fixed-pos
ition element |
57 never repainted, and it appeared to scroll along with the composited cont
ainer. | 61 never repainted, and it appeared to scroll along with the composited cont
ainer. |
58 --> | 62 --> |
59 <div class="compositedBehind"> </div> | 63 <div class="compositedBehind"> </div> |
60 | 64 |
61 <div class="containerOverlapsComposited"> | 65 <div class="containerOverlapsComposited"> |
62 <div class="fixed"></div> | 66 <div class="fixed"></div> |
63 </div> | 67 </div> |
64 </body> | 68 </body> |
65 | 69 |
66 </html> | 70 </html> |
OLD | NEW |