| <!DOCTYPE html> <!-- webkit-test-runner [ useFlexibleViewport=true ] --> |
| |
| <html> |
| <head> |
| <meta name="viewport" content="initial-scale=0.5"> |
| <style> |
| button { |
| display: block; |
| } |
| iframe { |
| margin-top: 800px; |
| } |
| </style> |
| |
| <script> |
| if (window.testRunner) { |
| testRunner.dumpAsText(); |
| testRunner.waitUntilDone(); |
| } |
| |
| if (window.internals) |
| internals.settings.setFrameFlattening("FullyEnabled") |
| |
| function pageDidScroll() |
| { |
| document.getElementById('result').textContent = 'FAIL: page scrolled to ' + document.scrollingElement.scrollTop; |
| } |
| |
| function doTest() |
| { |
| window.setTimeout(function() { |
| document.getElementById('frame').contentDocument.getElementById('input').focus(); |
| }, 0); |
| |
| // Wait for any scroll to happen. |
| window.setTimeout(function() { |
| if (window.testRunner) |
| testRunner.notifyDone(); |
| }, 100); |
| } |
| |
| window.addEventListener('load', doTest, false); |
| </script> |
| </head> |
| <body onscroll="pageDidScroll()"> |
| |
| <p>Tests that a programmatic focus should not scroll into view</p> |
| <div id="result"> |
| PASS: page did not scroll. |
| </div> |
| |
| <iframe id="frame" srcdoc="<style>input { margin: 400px 20px; }</style> |
| <input id='input' type='text'> |
| "></iframe> |
| |
| </body> |
| </html> |