ladybird/Libraries/LibWeb/CSS/Invalidation
Andreas Kling b7a290cbe2 LibWeb: Keep pseudo-element rules in pseudo buckets
Keep pseudo-element style rules out of the normal element rule buckets
while preserving the same id, class, tag, attribute and root buckets
inside each known pseudo-element type. This avoids collecting pseudo
rules for normal element style, without broadening pseudo style
collection to every rule targeting the queried pseudo-element.

Update the has invalidator to walk both the normal rule buckets and
the pseudo-element bucket maps when deciding whether pending :has()
mutations may affect style.
2026-06-19 01:40:49 +02:00
..
AdoptedStyleSheetInvalidator.cpp LibWeb: Use targeted invalidation when adopting a stylesheet 2026-05-10 20:19:32 +02:00
AdoptedStyleSheetInvalidator.h LibWeb: Move adopted stylesheet invalidation into a helper 2026-04-29 15:47:23 +02:00
AncestorTraversal.h LibWeb: Use invalidation plans for pseudo-class changes 2026-05-23 23:37:36 +02:00
AttributeInvalidator.cpp LibWeb: Move attribute style invalidation into a helper 2026-04-29 15:47:23 +02:00
AttributeInvalidator.h LibWeb: Move attribute style invalidation into a helper 2026-04-29 15:47:23 +02:00
CustomElementInvalidator.cpp LibWeb: Propagate inherited style across slot boundaries 2026-05-22 09:38:59 +02:00
CustomElementInvalidator.h LibWeb: Move custom state set invalidation into the helper 2026-04-29 15:47:23 +02:00
ElementStateInvalidator.cpp LibWeb: Target :active and :open invalidation 2026-06-18 13:42:51 +02:00
ElementStateInvalidator.h LibWeb: Move shadow root style invalidation into the helper 2026-04-29 15:47:23 +02:00
EmbeddedContentInvalidator.cpp LibWeb: Move embedded content style invalidation into a helper 2026-04-29 15:47:23 +02:00
EmbeddedContentInvalidator.h LibWeb: Move embedded content style invalidation into a helper 2026-04-29 15:47:23 +02:00
FormControlInvalidator.cpp LibWeb: Invalidate style when form control validity changes 2026-06-08 19:28:37 +02:00
FormControlInvalidator.h LibWeb: Invalidate style when form control validity changes 2026-06-08 19:28:37 +02:00
HasMutationFeatureCollector.cpp LibWeb: Build style invalidation data lazily 2026-06-18 15:45:12 +02:00
HasMutationFeatureCollector.h LibWeb: Target :active and :open invalidation 2026-06-18 13:42:51 +02:00
HasMutationInvalidator.cpp LibWeb: Keep pseudo-element rules in pseudo buckets 2026-06-19 01:40:49 +02:00
HasMutationInvalidator.h LibWeb: Avoid needless :has() descendant fanout 2026-06-08 17:16:18 +02:00
InvalidationSetMatcher.cpp LibWeb: Track validity pseudo-classes for style invalidation 2026-06-08 19:28:37 +02:00
InvalidationSetMatcher.h LibWeb: Narrow pseudo-class self invalidation 2026-05-30 02:13:23 +02:00
LanguageInvalidator.cpp LibWeb: Skip unchanged :has() mutation fanout 2026-04-30 00:24:04 +02:00
LanguageInvalidator.h LibWeb: Move text directionality invalidation into the helper 2026-04-29 15:47:23 +02:00
LinkInvalidator.cpp LibWeb: Move hyperlink style invalidation into a helper 2026-04-29 15:47:23 +02:00
LinkInvalidator.h LibWeb: Move hyperlink style invalidation into a helper 2026-04-29 15:47:23 +02:00
MediaQueryInvalidator.cpp LibWeb: Build style invalidation data lazily 2026-06-18 15:45:12 +02:00
MediaQueryInvalidator.h LibWeb: Move media query style invalidation into a helper 2026-04-29 15:47:23 +02:00
NodeInvalidator.cpp LibWeb: Narrow pseudo-class self invalidation 2026-05-30 02:13:23 +02:00
NodeInvalidator.h LibWeb: Move node style invalidation into a helper 2026-04-29 15:47:23 +02:00
PartInvalidator.cpp LibWeb: Move part style invalidation into a helper 2026-04-29 15:47:23 +02:00
PartInvalidator.h LibWeb: Move part style invalidation into a helper 2026-04-29 15:47:23 +02:00
PseudoClassInvalidator.cpp LibWeb: Track interaction pseudo-classes in :has() metadata 2026-06-12 15:13:29 +02:00
PseudoClassInvalidator.h LibWeb: Use invalidation plans for pseudo-class changes 2026-05-23 23:37:36 +02:00
SlotInvalidator.cpp LibWeb: Propagate inherited style across slot boundaries 2026-05-22 09:38:59 +02:00
SlotInvalidator.h LibWeb: Propagate inherited style across slot boundaries 2026-05-22 09:38:59 +02:00
StructuralMutationInvalidator.cpp LibWeb: Avoid broad invalidation for nth-child filters 2026-06-12 15:13:29 +02:00
StructuralMutationInvalidator.h LibWeb: Avoid broad invalidation for nth-child filters 2026-06-12 15:13:29 +02:00
StyleInvalidator.cpp LibWeb: Avoid broad invalidation for nth-child filters 2026-06-12 15:13:29 +02:00
StyleInvalidator.h LibWeb: Move StyleInvalidator into CSS invalidation 2026-04-29 15:47:23 +02:00