71 lines
2.8 KiB
HTML
71 lines
2.8 KiB
HTML
<html>
|
|
<head>
|
|
<script src="../../../resources/js-test-pre.js"></script>
|
|
<script>
|
|
var givenScrollTop = 0;
|
|
var givenScrollLeft = 2;
|
|
var expectedScrollTop = 0;
|
|
var expectedScrollLeft = 322;
|
|
var event;
|
|
var div;
|
|
|
|
if (window.testRunner)
|
|
testRunner.waitUntilDone();
|
|
|
|
function dispatchWheelEvent()
|
|
{
|
|
var overflowElement = document.getElementById("overflow");
|
|
if (overflowElement)
|
|
overflowElement.addEventListener("mousewheel", mousewheelHandler, false);
|
|
|
|
if (window.eventSender) {
|
|
eventSender.mouseMoveTo(100, 110);
|
|
eventSender.continuousMouseScrollBy(-window.givenScrollLeft, -window.givenScrollTop, true);
|
|
}
|
|
|
|
setTimeout('checkOffsets();', 100);
|
|
}
|
|
|
|
function checkOffsets()
|
|
{
|
|
div = document.getElementById("overflow");
|
|
shouldBe("div.scrollTop", "window.expectedScrollTop");
|
|
shouldBe("div.scrollLeft", "window.expectedScrollLeft");
|
|
|
|
if (window.testRunner)
|
|
window.testRunner.notifyDone();
|
|
}
|
|
|
|
function mousewheelHandler(e)
|
|
{
|
|
event = e;
|
|
shouldBe("event.wheelDeltaY", "0");
|
|
shouldBe("event.wheelDeltaX", "window.givenScrollLeft * -3");
|
|
|
|
if (e.wheelDeltaY)
|
|
shouldBe("event.wheelDelta", "0");
|
|
else
|
|
shouldBe("event.wheelDelta", "window.givenScrollLeft * -3");
|
|
}
|
|
</script>
|
|
</head>
|
|
|
|
<body style="margin:0" onload="setTimeout('dispatchWheelEvent();', 100)">
|
|
<!-- This div is 200 pixels high. The content results in scrool bars on
|
|
both edges, resulting in an effective content area of 185 x 185 on
|
|
linux. The paging context overlap is 24 pixels. So one page of scroll
|
|
moves the content by 185 - 24 -= 161 pixels. -->
|
|
<div id="overflow" style="border:2px solid black;overflow:auto;height:200px;width:200px;">
|
|
<div style="height:300px;width:600px">
|
|
<div style="background-color:red;height:300px;width:300px;position:relative;left:0px;top:0px"></div>
|
|
<div style="background-color:green;height:300px;width:300px;position:relative;left:300px;top:-300px"></div>
|
|
</div>
|
|
<div style="height:300px;width:600px">
|
|
<div style="background-color:blue;height:300px;width:300px;position:relative;left:0px;top:0px"></div>
|
|
<div style="background-color:yellow;height:300px;width:300px;position:relative;left:300px;top:-300px"></div>
|
|
</div>
|
|
</div>
|
|
<div id="console"></div>
|
|
</body>
|
|
</html>
|