Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Errors
- This test gets skipped with pattern: os == 'win'
- This test failed 84 times in the preceding 30 days. quicksearch this test
- Manifest: layout/base/tests/mochitest.toml
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<script src="/tests/SimpleTest/SimpleTest.js"></script>
<script src="/tests/SimpleTest/EventUtils.js"></script>
<script src="/tests/SimpleTest/paint_listener.js"></script>
<link rel="stylesheet" href="/tests/SimpleTest/test.css"/>
<style>
html {
user-select: none;
}
textarea {
width: 100%;
height: 20px;
position: fixed;
bottom: 20px;
user-select: text;
}
</style>
</head>
<body>
<p id="display"></p>
<div id="content" style="display: none"></div>
<pre id="test"></pre>
<textarea name="name" rows="1" cols="20" inputmode="none">text</textarea>
</body>
<script>
SimpleTest.waitForExplicitFinish();
SpecialPowers.pushPrefEnv({
set: [
["layout.accessiblecaret.enabled", true],
["layout.accessiblecaret.enabled_on_touch", true],
],
}, async () => {
await SpecialPowers.spawnChrome([], () => {
browsingContext.touchEventsOverride = "enabled";
});
const utils = SpecialPowers.DOMWindowUtils;
const target = document.querySelector("textarea");
const selectionchangePromise = new Promise(resolve => {
target.addEventListener("selectionchange", () => resolve());
});
ok(!utils.isApzDisabledForElement(target),
"APZ is not disabled on the textarea");
// Tap on the text area.
synthesizeTouch(target, 10, 10, { type: "touchstart" });
synthesizeTouch(target, 10, 10, { type: "touchend" });
await selectionchangePromise;
ok(utils.isApzDisabledForElement(target),
"Now APZ is disabled on the textarea");
const blurPromise = new Promise(resolve => {
target.addEventListener("blur", () => resolve());
});
target.blur();
await blurPromise;
ok(!utils.isApzDisabledForElement(target),
"Now APZ is re-enabled on the textarea");
SimpleTest.finish();
});
</script>
</html>