blob: fd8242f5ef8733b6d72fecb8cfde44e05f3c60f3 [file] [log] [blame]
<!DOCTYPE html>
<style>
/* To ensure full viewport repaint when viewport is resized. */
body {
background-image: linear-gradient(red, blue);
background-attachment: fixed;
margin: 0;
}
#container {
width: 200px;
height: 200px;
border: 1px solid black;
overflow: scroll;
}
#child {
width: 100px;
height: 100px;
}
</style>
<script src="../resources/text-based-repaint.js" type="text/javascript"></script>
<script>
if (window.testRunner) {
testRunner.useUnfortunateSynchronousResizeMode();
}
function repaintTest() {
// Invalidation of horizontal scrollbar should be tracked.
document.getElementById('child').style.width = '2000px';
}
window.onload = function() {
// Trigger a full viewport repaint to test if scrollbar damages are cleared
// even if we shortcut children invalidations.
window.resizeTo(1000, 600);
// Invalidation of vertical scrollbar before the repaint test should not be tracked during repaintTest().
document.getElementById('child').style.height = '2000px';
runRepaintAndPixelTest();
};
</script>
<div style="height: 50px">
Tests if scrollbar damage flag is cleared during a full viewport invalidation.
Passes if the result repaint rects contain the horizontal scrollbar but not the vertical scrollbar.
</div>
<div id="container">
<div id="child"></div>
</div>