diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /testing/web-platform/tests/pointerevents/pointer-events-none-skip-scroll-scrollbar.html | |
parent | Initial commit. (diff) | |
download | firefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz firefox-26a029d407be480d791972afb5975cf62c9360a6.zip |
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/pointerevents/pointer-events-none-skip-scroll-scrollbar.html')
-rw-r--r-- | testing/web-platform/tests/pointerevents/pointer-events-none-skip-scroll-scrollbar.html | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/testing/web-platform/tests/pointerevents/pointer-events-none-skip-scroll-scrollbar.html b/testing/web-platform/tests/pointerevents/pointer-events-none-skip-scroll-scrollbar.html new file mode 100644 index 0000000000..f3dc4d6c7b --- /dev/null +++ b/testing/web-platform/tests/pointerevents/pointer-events-none-skip-scroll-scrollbar.html @@ -0,0 +1,53 @@ +<!doctype html> +<meta charset=utf-8> +<title>pointer-events: none correctly targets scrolls</title> +<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> +<script src="/resources/testdriver-actions.js"></script> +<style> + body { + margin: 0; + } + + #scroller { + overflow: auto; + width: 300px; + height: 300px; + border: 2px solid blue; + pointer-events: none; + } + + .spacer { + height: 200vh; + } + +</style> + +<div id="scroller"> + <div class="spacer"></div> +</div> +<div class="spacer"></div> + +<script> + promise_test(async (t) => { + let scrolled = new Promise((resolve) => { + let scrollers = [window, document.getElementById("scroller")]; + let onscroll = (evt) => { + for (const scroller of scrollers) { + scroller.removeEventListener("scroll", onscroll); + } + resolve(evt.target.id || "root"); + } + for (const scroller of scrollers) { + scroller.addEventListener("scroll", onscroll); + } + }); + // The cursor is expected on the scrollbar, but if it's not (e.g. if the + // scrollbar is overlay and isn't show), the test should still pass. + const actions = new test_driver.Actions().scroll(295, 200, 0, 50, { duration: 50 }); + actions.send(); + assert_equals(await scrolled, "root", "Incorrect element scrolled"); + }, "Wheel-scroll over pointer-events: none scroller skips that scroller"); +</script> |