servo/tests/wpt/meta/css
Martin Robinson 11844ca5af
layout: Add a layout hit test and use it for document.elementsFromPoint (#38463)
In #18933, hit testing was moved from layout to WebRender. This presents
some issues. For instance, the DOM can change at the same time that hit
test is happening. This can mean that hit test returns references to
defunct DOM nodes, introducing memory safety issues. Currently, Servo
will try to ensure that the epochs used for testing and those recorded
in the DOM match, but this is not very reliable and has led to code that
retries failed hit tests.

This change reintroduces (8 years later) a layout hit tester and turns
it on for `document.elementFromPoint` and `document.elementsFromPoint`.
The idea is that this hit tester will gradually replace the majority of
the WebRender hit testing happening in the renderer.

Testing: This shouldn't really change the behavior hit testing, but it
seems to improve one WPT test.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Oriol Brufau <obrufau@igalia.com>
Co-authored-by: kongbai1996 <1782765876@qq.com>
2025-08-05 09:48:21 +00:00
..
compositing Sync WPT with upstream (22-06-2025) (#37606) 2025-06-22 01:41:56 +00:00
css-align Fix intermittent align-content tests (#37760) 2025-06-28 12:13:47 +00:00
css-animations Sync WPT with upstream (20-07-2025) (#38178) 2025-07-20 15:11:10 +00:00
css-backgrounds layout: respect image-rendering on border images (#38346) 2025-07-30 12:57:10 +00:00
css-borders Sync WPT with upstream (10-07-2025) (#37974) 2025-07-10 03:09:13 +00:00
css-box Sync WPT with upstream (30-04-2025) (#36785) 2025-04-30 19:46:03 +00:00
css-cascade script: Unify script-based "update the rendering" and throttle it to 60 FPS (#38431) 2025-08-04 16:27:00 +00:00
css-color Sync WPT with upstream (03-08-2025) (#38434) 2025-08-03 01:48:15 +00:00
css-color-hdr Sync WPT with upstream (20-04-2025) (#36618) 2025-04-20 01:47:50 +00:00
css-conditional compositor: Do not wait for animation termination to take screenshots (#38055) 2025-07-14 12:18:18 +00:00
css-content Sync WPT with upstream (03-08-2025) (#38434) 2025-08-03 01:48:15 +00:00
css-display Enable layout_grid_enabled pref for all tests (#36316) 2025-04-03 18:48:05 +00:00
css-easing Upgrade Stylo to 2025-06-03 (#37444) 2025-06-19 12:30:32 +00:00
css-env Enable more css tests (#31469) 2024-03-01 07:49:39 +00:00
css-flexbox Sync WPT with upstream (27-07-2025) (#38296) 2025-07-27 01:45:05 +00:00
css-fonts Sync WPT with upstream (27-07-2025) (#38296) 2025-07-27 01:45:05 +00:00
css-gaps Sync WPT with upstream (03-08-2025) (#38434) 2025-08-03 01:48:15 +00:00
css-grid Sync WPT with upstream (03-08-2025) (#38434) 2025-08-03 01:48:15 +00:00
css-images layout: respect image-rendering on border images (#38346) 2025-07-30 12:57:10 +00:00
css-inline/baseline-source fix: Crashing due to input element hack (#36461) 2025-04-11 06:51:52 +00:00
css-lists Add support for static SVG images using resvg crate (#36721) 2025-05-27 11:02:40 +00:00
css-logical layout: Let getComputedStyle resolve auto min size as 0px when needed (#36430) 2025-04-14 10:31:48 +00:00
css-masking layout: Unify scrollable overflow calculation and include position: absolute (#37475) 2025-06-16 11:30:31 +00:00
css-masonry/tentative/parsing Sync WPT with upstream (13-07-2025) (#38026) 2025-07-13 02:09:35 +00:00
css-mixins Sync WPT with upstream (10-07-2025) (#37974) 2025-07-10 03:09:13 +00:00
css-nesting Upgrade Stylo to 2025-06-03 (#37444) 2025-06-19 12:30:32 +00:00
css-overflow Sync WPT with upstream (03-08-2025) (#38434) 2025-08-03 01:48:15 +00:00
css-paint-api canvas: Add CanvasTransform 'setTransform(transform)' method (#37692) 2025-06-25 16:11:54 +00:00
css-position layout: Account for sticky nodes in ScrollTree transforms and cache transforms (#38391) 2025-07-31 13:36:32 +00:00
css-pseudo compositor: Do not wait for animation termination to take screenshots (#38055) 2025-07-14 12:18:18 +00:00
css-shadow-parts Sync WPT with upstream (27-07-2025) (#38296) 2025-07-27 01:45:05 +00:00
css-sizing Sync WPT with upstream (27-07-2025) (#38296) 2025-07-27 01:45:05 +00:00
css-syntax Sync WPT with upstream (13-04-2025) (#36488) 2025-04-13 02:52:15 +00:00
css-tables layout: Account for sticky nodes in ScrollTree transforms and cache transforms (#38391) 2025-07-31 13:36:32 +00:00
css-text Sync WPT with upstream (20-07-2025) (#38178) 2025-07-20 15:11:10 +00:00
css-text-decor Sync WPT with upstream (03-08-2025) (#38434) 2025-08-03 01:48:15 +00:00
css-transforms layout: Add a layout hit test and use it for document.elementsFromPoint (#38463) 2025-08-05 09:48:21 +00:00
css-transitions Sync WPT with upstream (20-07-2025) (#38178) 2025-07-20 15:11:10 +00:00
css-ui layout: Fix negative outline offset (#38418) 2025-08-01 20:43:04 +00:00
css-values Sync WPT with upstream (03-08-2025) (#38434) 2025-08-03 01:48:15 +00:00
css-variables Sync WPT with upstream (29-06-2025) (#37774) 2025-06-29 01:47:33 +00:00
css-will-change layout: Check if root before establishing containing block (#36360) 2025-04-29 19:19:31 +00:00
CSS2 script: Get scroll offsets from layout (#37509) 2025-06-20 09:39:12 +00:00
cssom script: Implement CSSStyleSheet.replace (#38244) 2025-07-25 03:05:22 +00:00
cssom-view Sync WPT with upstream (03-08-2025) (#38434) 2025-08-03 01:48:15 +00:00
fill-stroke/animation Update web-platform-tests to revision b'3634d5a63f2fa3969616396d95537c91c3348fe5' (#32959) 2024-08-07 10:15:56 +00:00
filter-effects Sync WPT with upstream (27-07-2025) (#38296) 2025-07-27 01:45:05 +00:00
geometry canvas: Add CanvasTransform 'setTransform(transform)' method (#37692) 2025-06-25 16:11:54 +00:00
mediaqueries Sync WPT with upstream (03-08-2025) (#38434) 2025-08-03 01:48:15 +00:00
selectors dom: Optimize IFrameCollection::validate (#38196) 2025-07-22 03:54:16 +00:00
WOFF2 fonts: Add support for WOFF2 and properly load web fonts from @imports (#31879) 2024-03-26 20:31:52 +00:00