blob: 8176f7b218b6a3e03f0cca28c3fefb823e558010 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
iframe {
position: absolute;
left: 0;
top: 0;
width: 400px;
height: 400px;
}
</style>
</head>
<body>
<iframe></iframe>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script src="../utils.js"></script>
<script>
'use strict';
promise_test(async () => {
const body = document.body;
body.style.width = `${window.innerWidth * 2}px`;
body.style.height = `${window.innerHeight * 2}px`;
const iframe = body.firstElementChild;
const target = iframe.contentDocument.body.appendChild(document.createElement("div"));
target.setAttribute("style", `
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
touch-action: none;
`);
await new Promise(resolve => setTimeout(resolve, 100));
await ui.swipe({ x: 150, y: 150 }, { x: 50, y: 50 });
assert_equals(window.pageXOffset, 0, "The page was not scrolled in the x-axis.");
assert_equals(window.pageYOffset, 0, "The page was not scrolled in the y-axis.");
}, "Testing that setting touch-action: none on an iframe's content and interacting with it does prevents page scrolling.");
</script>
</body>
</html>