64 lines
1.8 KiB
HTML
64 lines
1.8 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="../../resources/basic-gestures.js"></script>
|
|
<script src="../../resources/ui-helper.js"></script>
|
|
<script>
|
|
if (window.testRunner) {
|
|
testRunner.dumpAsText();
|
|
testRunner.waitUntilDone();
|
|
}
|
|
|
|
async function runTest()
|
|
{
|
|
if (!testRunner.runUIScript)
|
|
return;
|
|
|
|
var output = '';
|
|
|
|
await UIHelper.setHardwareKeyboardAttached(false);
|
|
await UIHelper.activateElementAndWaitForInputSession(document.getElementById('editable'));
|
|
|
|
var programmaticScroll = 500;
|
|
document.scrollingElement.scrollTop = programmaticScroll;
|
|
await UIHelper.enterText("Test");
|
|
await UIHelper.ensurePresentationUpdate();
|
|
if (window.pageYOffset < programmaticScroll)
|
|
output += 'PASS: page has scrolled back to the top to show the element that has text being entered into it.';
|
|
else
|
|
output += 'FAIL: page has failed to scroll when entering text into a form that is offscreen.';
|
|
output += '<br>';
|
|
|
|
document.getElementById('testArea').innerHTML = output;
|
|
testRunner.notifyDone();
|
|
}
|
|
|
|
window.addEventListener('load', runTest, false);
|
|
</script>
|
|
<style>
|
|
#testArea {
|
|
height: 2000px;
|
|
width: 300px;
|
|
background-color: silver;
|
|
font-family: monospace;
|
|
font-size: 18px;
|
|
}
|
|
#editable {
|
|
font-family: monospace;
|
|
font-size: 18px;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
This test focuses a form, them scrolls to the bottom of the page.
|
|
Then text is entered in the form, and we check to make sure the page has scrolled
|
|
so that the input is visible again.
|
|
<div id="result"></div>
|
|
<div id="testArea"><input id="editable" type="text"></input></div>
|
|
</body>
|
|
</html>
|
|
|
|
|
|
|
|
|