3 <head><title>Tests that a momentum scroll (i.e. a fling) eventually resets back to no-overhang state</title></head>
5 <div id="box" style="height:800px; background: red; border:2px solid black; width:100%"></div>
6 <div id="info">This test requires DRT.</div>
8 if (window.internals) {
9 document.getElementById('info').style.visibility = 'hidden';
10 internals.settings.setMockScrollbarsEnabled(false);
12 eventSender.mouseMoveTo(10, 10);
13 eventSender.mouseDragBegin();
14 eventSender.mouseDragEnd();
16 // Simulate a momentum scroll following the end of a normal scroll.
17 eventSender.mouseMomentumBegin();
18 eventSender.mouseMomentumScrollBy(0, 250, false, true);
19 eventSender.mouseMomentumEnd();
21 // The momentum scroll above should have resulted in overflow above the page.
22 // Ensure that it has (via scrollTop) and register an onscroll listener to
23 // ensure that the timer restores the position.
24 if (document.documentElement.scrollTop == 0) {
25 // FAIL: Above didn't result in overscroll.
26 document.getElementById('box').style.background = 'blue';
30 document.getElementById('box').style.background = 'green';
31 // Wait for the timer to restore the position.
32 testRunner.waitUntilDone();
33 var startedScrolling = false;
34 window.onscroll = function() {
35 if (document.documentElement.scrollTop == 0) {
36 testRunner.notifyDone();