Implement concept of part-like pseudo-elements.
This implements the concept of part-like pseudo-elements, specified in
https://drafts.csswg.org/css-pseudo-4/#part-like-pseudo-elements by
providing a place to define pseudo-elements as part-like, and allowing
more pseudo-elements and pseudo-classes to be after part-like
pseudo-elements.
Note that this currently requires that a part-like pseudo-element be a
UA shadow pseudo-element; we don't support it for other pseudo-element
types. In other words, it has to be backed by a real element. This is
a reasonable restriction since it matches what part-like pseudo-elements
conceptually represent. (One way to think about the terms is that
tree-like pseudo-elements are backed by a real box, and part-like
pseudo-elements are backed by a real element.)
This change makes two not-yet-shipped pseudo-elements be part-like:
-
::picker(select) for the customizable element ::details-content for the element (which is also made a tree-abiding pseudo-element here, since it incorrectly wasn't so before) Bug: 356158098, 1469418 Change-Id: Ia49042ea0648081c78b9cdc7d4dcffcbd92cd491 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5836755 Reviewed-by: Rune Lillesveen futhark@chromium.org Commit-Queue: David Baron dbaron@chromium.org Cr-Commit-Position: refs/heads/main@{#1366161}