Chromium Code Reviews| Index: third_party/WebKit/LayoutTests/fast/events/autoscroll-upwards-propagation-overflow-hidden-iframe-body.html |
| diff --git a/third_party/WebKit/LayoutTests/fast/events/autoscroll-upwards-propagation-overflow-hidden-iframe-body.html b/third_party/WebKit/LayoutTests/fast/events/autoscroll-upwards-propagation-overflow-hidden-iframe-body.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..acc6f3df07ca4243448ab90bebe2e24a7f78a8e8 |
| --- /dev/null |
| +++ b/third_party/WebKit/LayoutTests/fast/events/autoscroll-upwards-propagation-overflow-hidden-iframe-body.html |
| @@ -0,0 +1,48 @@ |
| +<!DOCTYPE html> |
| +<script src="../../resources/js-test.js"></script> |
| +<script type="text/javascript"> |
| + var maxScrollLeftiFrame; |
| + |
| + setPrintTestResultsLazily(); |
| + jsTestIsAsync = true; |
| + description("This test insures that if an autoscroll starts from within a " + |
|
bokan
2015/09/30 12:52:40
ditto about ensures/insures
ymalik
2015/09/30 14:16:58
Done.
|
| + "scrollable div in an iframe, it does not propagate to its non-scrollabe " + |
| + "document body. Furthermore, it tests that if the body has only one of " + |
| + "overflowX, or overflowY set to hidden, the scrollable axis actually " + |
| + "scrolls. Note that this test is pertaining to crbug.com/531525."); |
| + |
| + function finishTest() { |
| + eventSender.mouseUp(); |
| + var iframe = document.getElementById('partialScrolliFrame'); |
| + var iframeDoc = iframe.contentDocument; |
| + // Because only overflowY:hidden is set, horizontal scroll should happen and |
| + // vertical scroll shouldn't. |
| + if (iframeDoc.scrollingElement.scrollTop == 0 && iframeDoc.scrollingElement.scrollLeft == maxScrollLeftiFrame) { |
| + testPassed("Document didn't scroll."); |
| + } else { |
| + testFailed("Document scrolled although overflow:hidden."); |
| + } |
| + document.getElementById('partialScrolliFrame').style.display = 'none'; |
| + finishJSTest(); |
| + } |
| + |
| + window.onload = function () { |
| + var iframe = document.getElementById('partialScrolliFrame'); |
| + var iframeDoc = iframe.contentDocument; |
| + iframeDoc.body.style.overflowY = "hidden" |
| + maxScrollLeftiFrame = iframeDoc.scrollingElement.scrollWidth - iframe.contentWindow.innerWidth; |
| + |
| + var element = iframeDoc.getElementById('select'); |
| + var x = iframe.offsetLeft + element.offsetLeft + 7; |
| + var y = iframe.offsetTop + element.offsetTop + 7; |
| + eventSender.dragMode = false; |
| + eventSender.mouseMoveTo(x, y); |
| + eventSender.mouseDown(); |
| + eventSender.mouseMoveTo(x + 800, y); |
| + eventSender.mouseMoveTo(x + 800, y + 500); |
| + window.requestAnimationFrame(finishTest); |
| + } |
| +</script> |
| + |
| +<iframe id="partialScrolliFrame" src="resources/page-with-scrollable-div.html"></iframe> |
| + |