Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!doctype HTML>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<body>
<div contenteditable="true" id="target">
</div>
<script>
// Selectionchange event should not get fired if the selection is already set to the beginning of the root
promise_test(async () => {
let selectionChangeCount = 0;
document.getElementById("target").focus();
await new Promise(resolve => step_timeout(resolve, 50));
document.addEventListener("selectionchange", () => ++selectionChangeCount);
test_driver.send_keys(target, "\uE003");
// Waits a short time to allow any events to be processed.
await new Promise(resolve => step_timeout(resolve, 50));
assert_equals(selectionChangeCount, 0, "Selectionchange event should not get fired");
}, "Selectionchange event not get fired when the selection is already set to the beginning of the root ");
</script>
</body>