118 lines
3.7 KiB
HTML
118 lines
3.7 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>Clicking in the scrollbar gutter should trigger scroll snapping</title>
|
|
<style type="text/css">
|
|
/* Use customized scrollbar to avoid platform differences. */
|
|
::-webkit-scrollbar {
|
|
width: 20px;
|
|
height: 20px;
|
|
}
|
|
::-webkit-scrollbar-button {
|
|
height: 0px;
|
|
width: 0px;
|
|
}
|
|
|
|
::-webkit-scrollbar-track-piece {
|
|
background-color: gray;
|
|
}
|
|
|
|
::-webkit-scrollbar-thumb {
|
|
height: 20px;
|
|
width: 20px;
|
|
background-color: black;
|
|
}
|
|
|
|
body {
|
|
margin: 0px;
|
|
}
|
|
|
|
.container {
|
|
height: 200px;
|
|
width: 200px;
|
|
overflow: auto;
|
|
scroll-snap-type: both mandatory;
|
|
}
|
|
|
|
.horizontal-drawer {
|
|
height: 100%;
|
|
width: 2000px;
|
|
}
|
|
|
|
.horizontal-drawer > div {
|
|
float: left;
|
|
width: 990px;
|
|
height: 100%;
|
|
}
|
|
|
|
.horizontal-drawer > div.snap-point {
|
|
scroll-snap-align: start;
|
|
width: 10px;
|
|
}
|
|
|
|
#vertical-container > div {
|
|
width: 100%;
|
|
height: 990px;
|
|
}
|
|
|
|
#vertical-container > div.snap-point {
|
|
scroll-snap-align: start;
|
|
height: 10px;
|
|
}
|
|
|
|
</style>
|
|
<script src="../../resources/js-test.js"></script>
|
|
<script src="../../resources/ui-helper.js"></script>
|
|
<script>
|
|
window.jsTestIsAsync = true;
|
|
|
|
async function onLoad()
|
|
{
|
|
if (window.eventSender == undefined) {
|
|
document.getElementById('console').innerText = "Clicking in the scrollbar gutter should trigger scroll snapping.";
|
|
return;
|
|
}
|
|
try {
|
|
eventSender.mouseMoveTo(175, 190);
|
|
eventSender.mouseDown();
|
|
eventSender.mouseUp();
|
|
|
|
let horizontalContainer = document.getElementById("horizontal-container");
|
|
await UIHelper.waitForTargetScrollAnimationToSettle(horizontalContainer);
|
|
expectTrue(horizontalContainer.scrollLeft == 1000, "clicking the horizontal scrollbar gutter snapped");
|
|
|
|
eventSender.mouseMoveTo(190, 370);
|
|
eventSender.mouseDown();
|
|
eventSender.mouseUp();
|
|
let verticalContainer = document.getElementById("vertical-container");
|
|
await UIHelper.waitForTargetScrollAnimationToSettle(verticalContainer);
|
|
expectTrue(verticalContainer.scrollTop == 1000, "dragging the vertical scrollbar thumb snapped");
|
|
} catch (e) {
|
|
console.log(e);
|
|
} finally {
|
|
finishJSTest();
|
|
}
|
|
}
|
|
</script>
|
|
</head>
|
|
<body onload="onLoad();">
|
|
<div id="horizontal-container" class="container">
|
|
<div class="horizontal-drawer">
|
|
<div class="snap-point" style="background: #80475E"></div>
|
|
<div></div>
|
|
<div class="snap-point" style="background: #CC5A71"></div>
|
|
<div></div>
|
|
</div>
|
|
</div>
|
|
<div id="vertical-container" class="container">
|
|
<div class="snap-point" style="background: #80475E"></div>
|
|
<div></div>
|
|
<div class="snap-point" style="background: #CC5A71"></div>
|
|
<div></div>
|
|
</div>
|
|
<p id="console"></p>
|
|
<script>
|
|
</script>
|
|
</body>
|
|
</html>
|