Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Test focus is moved to the previously focused element when dialog is closed</title>
<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>
<body>
<dialog>Dialog in parent</dialog>
<iframe srcdoc="<input><dialog> Dialog in child </dialog>"></iframe>
<input>
<script>
test(() => {
window.onload = function() {
const iframe = document.querySelector("iframe");
const input = iframe.contentDocument.querySelector("input");
// <input> in the child document is focused
input.focus();
const dialog = document.querySelector("dialog");
// <dialog> in the parent document is opened
dialog.showModal();
dialog.close();
assert_equals(document.activeElement, iframe);
assert_equals(iframe.contentDocument.activeElement, input);
}
}, "Focus should move back from parent document to child document");
test(() => {
window.onload = function() {
const iframe = document.querySelector("iframe");
const input = document.querySelector("input");
// <input> in the parent document is focused
input.focus();
const dialog = iframe.contentDocument.querySelector("dialog");
// <dialog> in the child document is focused
dialog.showModal();
dialog.close();
assert_equals(document.activeElement, input);
}
}, "Focus should move back from child document to parent document");
</script>
</body>