diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
commit | 43a97878ce14b72f0981164f87f2e35e14151312 (patch) | |
tree | 620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/css/selectors/focus-display-none-001.html | |
parent | Initial commit. (diff) | |
download | firefox-43a97878ce14b72f0981164f87f2e35e14151312.tar.xz firefox-43a97878ce14b72f0981164f87f2e35e14151312.zip |
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/css/selectors/focus-display-none-001.html')
-rw-r--r-- | testing/web-platform/tests/css/selectors/focus-display-none-001.html | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/selectors/focus-display-none-001.html b/testing/web-platform/tests/css/selectors/focus-display-none-001.html new file mode 100644 index 0000000000..63bf4465ea --- /dev/null +++ b/testing/web-platform/tests/css/selectors/focus-display-none-001.html @@ -0,0 +1,50 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>Selectors Level 4: focus</title> +<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#focus-pseudo"> +<link rel="help" href="https://html.spec.whatwg.org/multipage/interaction.html#focus-fixup-rule"> +<meta name="assert" content="Checks ':focus' pseudo-class after 'display: none'."> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="wrapper"> + <input id="input"> +</div> +<script> + "use strict"; + + const wrapper = document.getElementById("wrapper"); + const input = document.getElementById("input"); + + async_test((t) => { + input.focus(); + window.requestAnimationFrame(() => { + t.step(() => assert_true(input.matches(":focus"), + "Check input matches ':focus' after being focused")); + + input.style.display = "none"; + window.requestAnimationFrame(() => { + t.step(() => assert_false(input.matches(":focus"), + "Check input doesn't match ':focus' after getting 'display: none'")); + input.style.display = "inline"; + t.done(); + }); + }); + }, "Test ':focus' after 'display:none' on input"); + + async_test((t) => { + input.focus(); + window.requestAnimationFrame(() => { + t.step(() => assert_true(input.matches(":focus"), + "Check input matches ':focus' after being focused")); + + wrapper.style.display = "none"; + window.requestAnimationFrame(() => { + t.step(() => assert_false(input.matches(":focus"), + "Check input doesn't match ':focus' after parent got 'display: none'")); + wrapper.style.display = "block"; + t.done(); + }); + }); + }, "Test ':focus' after 'display:none' on input's parent"); +</script> |