Chromium Code Reviews| Index: LayoutTests/compositing/overflow/selection-gaps-after-removing-scrolling-contents.html |
| diff --git a/LayoutTests/compositing/overflow/selection-gaps-after-removing-scrolling-contents.html b/LayoutTests/compositing/overflow/selection-gaps-after-removing-scrolling-contents.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..de671405a30fb156d7185a254ff841da81b42a64 |
| --- /dev/null |
| +++ b/LayoutTests/compositing/overflow/selection-gaps-after-removing-scrolling-contents.html |
| @@ -0,0 +1,77 @@ |
| +<!DOCTYPE html> |
| +<style> |
| + #container { |
| + height: 500px; |
| + width: 300px; |
| + overflow: scroll; |
| + } |
| + |
| + .scrolled { |
| + height: 50px; |
| + width: 100px; |
| + background: orange; |
| + margin: 15px; |
| + transform: translateZ(0); |
| + } |
| +</style> |
| +<script> |
| + if (window.testRunner) |
| + testRunner.dumpAsText(); |
| + |
| + if (window.internals) |
| + window.internals.settings.setAcceleratedCompositingForOverflowScrollEnabled(true); |
| + |
| + var iteration = 1; |
| + |
| + function dumpLayerTree() { |
| + var pre = document.getElementById("console"); |
| + |
| + if (window.internals) { |
| + var layerTreeAsText = internals.layerTreeAsText(document); |
| + pre.innerHTML += '\n\n*** iteration ' + iteration + ': ***\n\n'; |
| + pre.innerHTML += layerTreeAsText; |
| + } |
| + |
| + iteration++; |
| + } |
| + |
| + onload = function doTest() |
|
Ian Vollick
2014/06/05 18:28:41
nit: I don't think this function needs a name.
hartmanng
2014/06/05 20:28:03
Done.
|
| + { |
| + var container = document.getElementById('container'); |
| + container.style.backgroundColor = 'blue'; |
| + |
| + dumpLayerTree(); |
| + |
| + var selection = getSelection(); |
| + var range = document.createRange(); |
| + range.selectNode(document.getElementById("selection")); |
| + selection.addRange(range); |
| + |
| + dumpLayerTree(); |
| + |
| + container.style.backgroundColor = ''; |
| + |
| + dumpLayerTree(); |
| + |
| + selection.removeAllRanges(); |
| + |
| + dumpLayerTree(); |
| + } |
| +</script> |
| + |
| +This test passes if the container's scrolling contents layer (the first child of the GraphicsLayer with 4 children) |
| +draws content only on iterations 1, 2, and 3. |
| + |
| +<div id="container"> |
| + <div class="scrolled">Lorem Ipsum</div> |
| + <div class="scrolled">Lorem Ipsum</div> |
| + <div class="scrolled" id="selection">Lorem Ipsum</div> |
| + <div class="scrolled">Lorem Ipsum</div> |
| + <div class="scrolled">Lorem Ipsum</div> |
| + <div class="scrolled">Lorem Ipsum</div> |
| + <div class="scrolled">Lorem Ipsum</div> |
| + <div class="scrolled">Lorem Ipsum</div> |
| + <div class="scrolled">Lorem Ipsum</div> |
| + <div class="scrolled">Lorem Ipsum</div> |
| +</div> |
| +<pre id="console"></pre> |