[wpt-sync] Sync PR 44402 - [HitTestTransparency] Experimental status
Categories
(Core :: DOM: Events, task, P4)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox124 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 44402 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/44402
Details from upstream follow.
Xianzhu Wang <wangxianzhu@chromium.org> wrote:
[HitTestTransparency] Experimental status
The feature uses cc::HitTestOpacity::kTransparent for pointer-events:
none. The flag is first marked on paint chunks, then PendingLayer and
cc::Layer, by merging cc::HitTestOpacity from merged painted results.
The merge algorithm (which is already ready for HitTestOpaqueness)
can handle cases such as pointer-events:none with pointer-events:auto
descendants (which will be merged into cc::HitTestOpaqueness::kMixed).
cc::Layer::HitTestable() is now based on this flag for blink.For test coverage, this CL also includes changes to make existing
tests pass or fix existing bugs with the feature:
- LayerTreeHostImpl::BuildHitTestData() now handles a SurfaceLayer
with pointer-events:none even if it doesn't draw contents, to make
CrossSiteSubframe/DragAndDropBrowserTest.CrossTabDrag/* pass.- Correct hit test transparency for scrolling contents.
- Correct hit test transparency for frames under pointer-events:none
container (b/323688987).- New tests.
ClusterTelemetry job shows that it can reduce main thread scrolling (hit test or repaint) by 36% (kFailedHitTest by 40%,
kNonFastScrollableRegion by 67%) compared to HitTestOpaqueness only.Bug: b/40062957, b/323688987
Change-Id: I224c8e5f047ec27bf4c8957ae59643457cc9252eReviewed-on: https://chromium-review.googlesource.com/5263065
WPT-Export-Revision: 699f42c86445658e1d439480c3db32ba1c173d9e
| Assignee | ||
Updated•1 year ago
|
| Assignee | ||
Comment 1•1 year ago
|
||
| Assignee | ||
Comment 2•1 year ago
|
||
CI Results
Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 6 tests and 1 subtests
Status Summary
Firefox
OK : 6
PASS: 6
Chrome
OK : 6
PASS: 5
FAIL: 1
Safari
OK : 6
PASS: 5
FAIL: 1
Links
Comment 4•1 year ago
|
||
| bugherder | ||
Description
•