Andreas Kling
60113a3be2
LibWeb: Schedule attribute :has() walks on enclosing shadow scopes
...
The property-based Node::invalidate_style only collected the element's
own shadow scope (when the element itself was a shadow host), not the
shadow scopes of enclosing hosts. So a class or attribute change on a
light-DOM descendant of a shadow host could not flip
:host(...:has(.descendant)) rules in that host's shadow root.
Walk parent_or_shadow_host from the mutated element and add every
enclosing shadow root's StyleScope to the set we check :has()
metadata against, schedule walks on, and run invalidation plans
through.
2026-04-26 10:40:58 +02:00
..
2026-04-24 20:08:29 +02:00
2026-04-21 07:36:13 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-26 10:40:58 +02:00
2026-04-26 10:40:58 +02:00
2026-04-24 20:08:29 +02:00
2026-03-10 15:17:51 +01:00
2026-04-24 20:08:29 +02:00
2026-04-23 22:12:13 +02:00
2026-04-21 07:36:13 +02:00
2026-04-24 20:08:29 +02:00
2026-04-25 08:49:04 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-25 14:54:18 +02:00
2026-04-24 20:08:29 +02:00
2026-04-26 10:40:58 +02:00
2026-04-24 20:08:29 +02:00
2026-04-25 17:06:28 +02:00
2026-04-21 06:59:11 -04:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-25 15:45:12 +02:00
2026-04-26 01:26:13 +02:00
2026-04-24 20:08:29 +02:00
2026-03-24 15:08:24 +01:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-22 08:02:15 -04:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-25 10:53:51 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-21 07:36:13 +02:00
2026-04-24 20:08:29 +02:00
2026-04-21 07:36:13 +02:00
2026-04-25 06:11:18 +02:00
2026-04-24 20:08:29 +02:00
2026-04-05 13:57:58 +02:00
2026-04-24 20:08:29 +02:00
2026-04-23 07:07:49 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-24 20:08:29 +02:00
2026-04-21 07:36:13 +02:00
2026-04-24 20:08:29 +02:00
2026-04-14 23:01:36 +02:00
2026-04-24 20:08:29 +02:00
2026-04-25 14:54:10 +02:00
2026-04-01 11:51:43 +02:00
2026-04-25 14:54:10 +02:00
2026-04-24 20:08:29 +02:00
2026-03-22 14:09:22 -05:00
2026-04-05 11:34:42 -04:00