Bug 261315 - invalidate :has() with nested positional pseudo-class selectors using new MatchElement/IsNegation values
Summary: invalidate :has() with nested positional pseudo-class selectors using new Mat...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: CSS (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2023-09-07 21:53 PDT by Cameron McCormack (:heycam)
Modified: 2023-09-14 21:54 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Cameron McCormack (:heycam) 2023-09-07 21:53:52 PDT
In https://bugs.webkit.org/show_bug.cgi?id=253943 I fixed invalidation issues with :has() selectors that have nested positional pseudo-class selectors (like :nth-child() and :first-child), by using style relation bits. A better solution suggested by Antti on the PR might be to generate new MatchElement/IsNegation values to represent the fact that class name changes need to be checked in both the "before change" and "after change" cases, and to look at the siblings of the element too.
Comment 1 Radar WebKit Bug Importer 2023-09-14 21:54:38 PDT
<rdar://problem/115537332>