blob: 198068df384e66d43c55043973109bb8707d59d4 [file] [log] [blame]
<!DOCTYPE html>
<style>
.container {
width: 100px;
height:100px;
position:absolute;
-webkit-transform:translateZ(0);
overflow:auto;
}
.content {
-webkit-transform: translateZ(0);
position:absolute;
width:10px;
height:10px;
}
.tall {
height:200px;
}
.wide {
width:200px;
}
.resizeWidget {
resize: both;
}
</style>
<pre id="layerTree"></pre>
<div class="container">
<div id="vertical" class="content tall"></div>
</div>
<div class="container">
<div id="horizontal" class="content wide"></div>
</div>
<div class="container">
<div id="both" class="content tall wide"></div>
</div>
<div id="corner" class="container resizeWidget">
<div class="content"></div>
</div>
<script>
function finishTest() {
document.getElementById("vertical").classList.remove("tall"); // topmost div loses a vertical scrollbar
document.getElementById("horizontal").classList.remove("wide"); // second div loses a horizontal scrollbar
document.getElementById("both").classList.remove("wide"); // third div loses both
document.getElementById("both").classList.remove("tall"); // vertical and horizontal scrollbars
document.getElementById("corner").classList.remove("resizeWidget"); // bottom div loses a resize corner but no scrollbars
if (window.testRunner) {
testRunner.displayAndTrackRepaints(); // Ensure compositor tree is up to date.
document.getElementById("layerTree").innerText = window.internals.layerTreeAsText(document);
}
}
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.displayAndTrackRepaints(); // Force compositor state to be updated before the container needs any overflow controls
finishTest();
} else
window.setTimeout(finishTest, 0);
</script>