| <!DOCTYPE html> |
| <html> |
| <head> |
| <style> |
| #container { |
| width: 500px; |
| height: 500px; |
| border: 1px solid black; |
| background-color: yellow; |
| -webkit-transform:translateZ(0); |
| } |
| |
| .box { |
| position: absolute; |
| left:50px; |
| width: 200px; |
| height: 200px; |
| -webkit-transform:translateZ(0); |
| } |
| |
| .at-the-top { |
| top: 100px; |
| background-color: red; |
| } |
| |
| .at-the-bottom { |
| top:200px; |
| left: 275px; |
| background-color: blue; |
| } |
| </style> |
| <script> |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| var result = ""; |
| |
| function testOnLoad() |
| { |
| // Small layer first |
| if (window.testRunner) |
| result = "First (small layer):<br>" + window.internals.layerTreeAsText(document); |
| |
| // Huge layer second |
| document.getElementById('container').style.height = "5000px"; |
| document.getElementById('blue-box').style.top = "4700px"; |
| if (window.testRunner) |
| result += "<br><br>Second (huge layer):<br>" + window.internals.layerTreeAsText(document); |
| |
| // Small layer third |
| document.getElementById('container').style.height = "500px"; |
| document.getElementById('blue-box').style.top = "200px"; |
| if (window.testRunner) { |
| result += "<br><br>Third (small layer):<br>" + window.internals.layerTreeAsText(document); |
| document.getElementById('layers').innerHTML = result; |
| } |
| } |
| |
| window.addEventListener('load', testOnLoad, false); |
| </script> |
| </head> |
| <body> |
| <p> |
| The yellow box should be 500 x 500 on startup. Then it should |
| stretch to be 500 x 5000, then shrink back down to 500 x 500. |
| This tests that we can resize to a huge layer and back again |
| and still maintain integrity of the layer tree. |
| </p> |
| <div id="container"> |
| <div class="box at-the-top"></div> |
| <div id="blue-box" class="box at-the-bottom"></div> |
| </div> |
| <pre id="layers">Layer tree appears here in DRT.</pre> |
| </body> |
| </html> |