Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test has a WPT meta file that expects 1 subtest issues.
- This WPT test may be referenced by the following Test IDs:
- /pointerlock/pointerlock_unadjustedMovement.html - WPT Dashboard Interop Dashboard
<!DOCTYPE html>
<html>
<body>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
</head>
<body>
<h2>Description</h2>
<p>This test validates that pointer lock accepts the unadjustedMovement option.</p>
<hr/>
<button id="Button">lockTarget</button>
<div id="target">Target</div>
<script type="text/javascript" >
const button = document.getElementById('Button');
const target = document.getElementById('target');
async_test(t => {
button.addEventListener('mousedown', t.step_func(() => {
const p = target.requestPointerLock({unadjustedMovement: true});
p.then(t.step_func(() => {
assert_equals(document.pointerLockElement, target);
t.done();
})).catch(t.step_func((error) => {
// requestPointerLock may throw NotSupportedError to say unadjustedMovement isn't supported.
assert_throws_dom("NotSupportedError", () => { throw error; });
// but to pass this test fully, it unadjustedMovement must be supported.
assert_unreached("unadjustedMovement must be implemented.");
t.done();
}));
}));
});
// Automated testing
test_driver.click(button);
</script>
</body>
</html>