| <!DOCTYPE html> |
| <html> |
| <head> |
| <title>This tests that we scroll the correct(second) container horizontally.</title> |
| <style> |
| .slider{ |
| overflow-x: scroll; |
| } |
| |
| .scrollable { |
| width: 2000px; |
| height: 500px; |
| border: 1px solid green; |
| } |
| </style> |
| </head> |
| <body> |
| <div class=slider id=firstcontainer> |
| <div class=scrollable>This should not scroll while the bottom green box is being hovered.</div> |
| </div> |
| <div class=slider id=secondcontainer> |
| <div class=scrollable></div> |
| </div> |
| <script> |
| if (window.eventSender && window.testRunner) { |
| testRunner.waitUntilDone(); |
| testRunner.dumpAsText(); |
| eventSender.monitorWheelEvents(); |
| // Scroll vertically to reach the bottom scrollable container. |
| eventSender.mouseMoveTo(10, 499); |
| eventSender.mouseScrollByWithWheelAndMomentumPhases(0, -1, 'began', 'none'); |
| eventSender.mouseScrollByWithWheelAndMomentumPhases(0, -1, 'changed', 'none'); |
| eventSender.mouseScrollByWithWheelAndMomentumPhases(0, -1, 'changed', 'none'); |
| eventSender.mouseScrollByWithWheelAndMomentumPhases(0, 0, 'ended', 'none'); |
| |
| eventSender.callAfterScrollingCompletes(function() { |
| // Scroll horizontally to check if we scroll the bottom scrollable container. |
| eventSender.monitorWheelEvents(); |
| eventSender.mouseMoveTo(10, 510); |
| eventSender.mouseScrollByWithWheelAndMomentumPhases(-1, 0, 'began', 'none'); |
| eventSender.mouseScrollByWithWheelAndMomentumPhases(-1, 0, 'changed', 'none'); |
| eventSender.mouseScrollByWithWheelAndMomentumPhases(-1, 0, 'changed', 'none'); |
| eventSender.mouseScrollByWithWheelAndMomentumPhases(0, 0, 'ended', 'none'); |
| |
| eventSender.callAfterScrollingCompletes(function() { |
| var firstOffset = document.getElementById("firstcontainer").scrollLeft; |
| var secondOffset = document.getElementById("secondcontainer").scrollLeft; |
| document.body.innerText = !firstOffset && secondOffset ? "PASS" : "FAIL"; |
| testRunner.notifyDone(); |
| }); |
| }); |
| } |
| </script> |
| </body> |
| </html> |