blob: 4397e086e68a74fcde8d2079b3af5e6c3f14b354 [file] [edit]
<!DOCTYPE html> <!-- webkit-test-runner [ AsyncOverflowScrollingEnabled=true AsyncFrameScrollingEnabled=true ] -->
<html>
<head>
<script src="../../../resources/ui-helper.js"></script>
<script src="../../../resources/js-test-pre.js"></script>
<style>
body {
height: 2000px;
}
.scroller {
width: 20%;
height: 20%;
overflow: scroll;
border: 1px solid black;
padding: 10px;
}
#innerDiv1 {
height: 400px;
}
#innerDiv2 {
height: 120px;
}
</style>
<script>
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.waitUntilDone();
}
function outerScrollerScrolled()
{
debug("SUCCESSFUL: keyboard scroll propagated from overflow:scroll region to parent overflow:scroll region.");
testRunner.notifyDone();
}
async function runTest()
{
if (!window.testRunner || !testRunner.runUIScript)
return;
var innerScroller = document.getElementById("innerScroller");
var outerScroller = document.getElementById("outerScroller");
outerScroller.addEventListener("scroll", outerScrollerScrolled);
innerScroller.scrollTo(0,10000);
// Click inside innerScroller
await UIHelper.activateAt(30,30);
// The down arrow needs to be pressed twice to "escape" the rubber-banding
await UIHelper.rawKeyDown("downArrow");
await UIHelper.rawKeyDown("downArrow");
}
</script>
</head>
<body onload="runTest()">
<div class="scroller" id="outerScroller">
<div class="scroller" id="innerScroller">
<div id="innerDiv2"></div>
</div>
<div id="innerDiv1"></div>
</div>
<script src="../../../../resources/js-test-post.js"></script>
</body>
</html>