diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:35:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-12 05:35:29 +0000 |
commit | 59203c63bb777a3bacec32fb8830fba33540e809 (patch) | |
tree | 58298e711c0ff0575818c30485b44a2f21bf28a0 /testing/web-platform/tests/focus | |
parent | Adding upstream version 126.0.1. (diff) | |
download | firefox-59203c63bb777a3bacec32fb8830fba33540e809.tar.xz firefox-59203c63bb777a3bacec32fb8830fba33540e809.zip |
Adding upstream version 127.0.upstream/127.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/focus')
2 files changed, 26 insertions, 28 deletions
diff --git a/testing/web-platform/tests/focus/cross-origin-ancestor-activeelement-after-child-lose-focus.sub.html b/testing/web-platform/tests/focus/cross-origin-ancestor-activeelement-after-child-lose-focus.sub.html index 35844bc91f..1b84b43f1c 100644 --- a/testing/web-platform/tests/focus/cross-origin-ancestor-activeelement-after-child-lose-focus.sub.html +++ b/testing/web-platform/tests/focus/cross-origin-ancestor-activeelement-after-child-lose-focus.sub.html @@ -20,36 +20,32 @@ function runTest() { const innerIFrame = outerIFrame.contentDocument.createElement("iframe"); - window.onmessage = function() { + window.onmessage = function(event) { + if (event.data != "ready") { + return; + } + + // We receive an message when the innerIFrame is ready and its input is focused. + // outerIframe is the ancestor of inner iframe, so the activeElement of + // it should be the inner iframe. + assert_equals(outerIFrame.contentDocument.activeElement, innerIFrame, + "The activeElement of the outer iframe should be the inner iframe"); + + // Now we focus the input in the top level + document.querySelector("input").focus(); + // Wait for a bit to let whatever the code that might change the focus to run window.requestAnimationFrame(function() { window.requestAnimationFrame(function() { window.requestAnimationFrame(function() { - - // We receive an message when the innerIFrame is ready and its input is focused. - // outerIframe is the ancestor of inner iframe, so the activeElement of - // it should be the inner iframe. - assert_equals(outerIFrame.contentDocument.activeElement, innerIFrame, - "The activeElement of the outer iframe should be the inner iframe"); - - // Now we focus the input in the top level - document.querySelector("input").focus(); - - // Wait for a bit to let whatever the code that might change the focus to run - window.requestAnimationFrame(function() { - window.requestAnimationFrame(function() { - window.requestAnimationFrame(function() { - // Since inner iframe lost its focus, the activeElement of outer iframe - // should be cleared as well, hence <body> should be focused. - assert_equals(outerIFrame.contentDocument.activeElement, outerIFrame.contentDocument.body, - "The activeElement of the outer iframe should be reverted back to <body>"); - assert_equals(document.activeElement, document.querySelector("input"), - "The activeElement of the top-level document should the input"); - done(); - }); - }); - }); - }); + // Since inner iframe lost its focus, the activeElement of outer iframe + // should be cleared as well, hence <body> should be focused. + assert_equals(outerIFrame.contentDocument.activeElement, outerIFrame.contentDocument.body, + "The activeElement of the outer iframe should be reverted back to <body>"); + assert_equals(document.activeElement, document.querySelector("input"), + "The activeElement of the top-level document should the input"); + done(); + }) }); }); } diff --git a/testing/web-platform/tests/focus/support/cross-origin-ancestor-activeelement-after-child-lose-focus-helper.html b/testing/web-platform/tests/focus/support/cross-origin-ancestor-activeelement-after-child-lose-focus-helper.html index 83d39d5c70..fe96614517 100644 --- a/testing/web-platform/tests/focus/support/cross-origin-ancestor-activeelement-after-child-lose-focus-helper.html +++ b/testing/web-platform/tests/focus/support/cross-origin-ancestor-activeelement-after-child-lose-focus-helper.html @@ -2,8 +2,10 @@ <body> <input /> <script> - document.querySelector("input").focus(); - window.parent.parent.postMessage("ready", '*'); + window.onload = function() { + document.querySelector("input").focus(); + window.parent.parent.postMessage("ready", '*'); + } </script> </body> </html> |