OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <html> | 2 <html> |
3 | 3 |
4 <head> | 4 <head> |
5 <script src="../../resources/run-after-display.js"></script> | 5 <script src="../../fast/repaint/resources/text-based-repaint.js"></script> |
6 <style> | 6 <style> |
7 | 7 |
8 .compositedBehind { | 8 .compositedBehind { |
9 width: 500px; | 9 width: 500px; |
10 height: 500px; | 10 height: 500px; |
11 -webkit-transform: translatez(0); | 11 -webkit-transform: translatez(0); |
12 background-color: cyan; | 12 background-color: cyan; |
13 } | 13 } |
14 | 14 |
15 .containerOverlapsComposited { | 15 .containerOverlapsComposited { |
(...skipping 11 matching lines...) Expand all Loading... |
27 top: 45px; | 27 top: 45px; |
28 left: 45px; | 28 left: 45px; |
29 background-color: lime; | 29 background-color: lime; |
30 width: 50px; | 30 width: 50px; |
31 height: 50px; | 31 height: 50px; |
32 } | 32 } |
33 | 33 |
34 </style> | 34 </style> |
35 | 35 |
36 <script> | 36 <script> |
37 if (window.testRunner) { | |
38 testRunner.dumpAsText(); | |
39 testRunner.waitUntilDone(); | |
40 } | |
41 | |
42 if (window.internals) { | 37 if (window.internals) { |
43 /* Note carefully, compositing for fixed position is _disabled_ here
*/ | 38 /* Note carefully, compositing for fixed position is _disabled_ here
*/ |
44 internals.settings.setAcceleratedCompositingForFixedPositionEnabled(
false); | 39 internals.settings.setAcceleratedCompositingForFixedPositionEnabled(
false); |
45 } | 40 } |
46 | 41 |
47 function test() | 42 function repaintTest() { |
48 { | 43 window.scrollTo(0, 100); |
49 runAfterDisplay(function() { | |
50 if (window.internals) | |
51 window.internals.startTrackingRepaints(document); | |
52 | |
53 window.scrollTo(0, 100); | |
54 | |
55 runAfterDisplay(function() { | |
56 if (window.internals) | |
57 document.getElementById('layers').textContent = window.int
ernals.layerTreeAsText(document, internals.LAYER_TREE_INCLUDES_REPAINT_RECTS); | |
58 | |
59 if (window.testRunner) | |
60 testRunner.notifyDone(); | |
61 }); | |
62 }); | |
63 } | 44 } |
64 </script> | 45 </script> |
65 | 46 |
66 </head> | 47 </head> |
67 | 48 |
68 | 49 |
69 | 50 |
70 <body onload="test()"> | 51 <body onload="runRepaintTest()"> |
71 <!-- | 52 <!-- |
72 Among other duplicate bugs: https://code.google.com/p/chromium/issues/det
ail?id=128375 | 53 Among other duplicate bugs: https://code.google.com/p/chromium/issues/det
ail?id=128375 |
73 A non-composited fixed-position element can get grouped into a composited
container. | 54 A non-composited fixed-position element can get grouped into a composited
container. |
74 In this case, repaint invalidations were incorrectly going to the RenderV
iew instead | 55 In this case, repaint invalidations were incorrectly going to the RenderV
iew instead |
75 of the composited container. The incorrect result was that the fixed-pos
ition element | 56 of the composited container. The incorrect result was that the fixed-pos
ition element |
76 never repainted, and it appeared to scroll along with the composited cont
ainer. | 57 never repainted, and it appeared to scroll along with the composited cont
ainer. |
77 --> | 58 --> |
78 <div class="compositedBehind"> </div> | 59 <div class="compositedBehind"> </div> |
79 | 60 |
80 <div class="containerOverlapsComposited"> | 61 <div class="containerOverlapsComposited"> |
81 <div class="fixed"></div> | 62 <div class="fixed"></div> |
82 </div> | 63 </div> |
83 | |
84 <pre id="layers"></pre> | |
85 </body> | 64 </body> |
86 | 65 |
87 </html> | 66 </html> |
OLD | NEW |