ladybird/Userland/Libraries/LibWeb
Andreas Kling df048e10f5 LibWeb: Include siblings+descendants when invalidating style
When an element is invalidated, it's possible for any subsequent sibling
or any of their descendants to also need invalidation. (Due to the CSS
sibling combinators, `+` and `~`)

For DOM node insertion/removal, we must also invalidate preceding
siblings, since they could be affected by :first-child, :last-child or
:nth-child() selectors.

This increases the amount of invalidation we do, but it's more correct.

In the future, we will implement optimizations that drastically reduce
the number of elements invalidated.
2024-09-22 18:42:40 +02:00
..
Animations LibWeb: Store property transitions in Animatable 2024-09-22 06:41:55 +02:00
ARIA Everywhere: Convert from_string_view -> from_string_literal where static 2024-09-11 10:59:04 +01:00
Bindings LibJS+LibWeb: Add a custom host hook to log unparsed date strings 2024-09-08 18:25:05 +02:00
Clipboard LibWeb: Implement the ClipboardEvent IDL interface 2024-08-22 14:21:13 +02:00
Cookie LibWeb+LibWebView: Set the default path for invalid cookie Path values 2024-09-19 00:01:56 +01:00
Crypto Everywhere: Convert from_string_view -> from_string_literal where static 2024-09-11 10:59:04 +01:00
CSS LibWeb: Put CSS transitions debug spam behind CSS_TRANSITIONS_DEBUG 2024-09-22 10:46:54 +02:00
DOM LibWeb: Include siblings+descendants when invalidating style 2024-09-22 18:42:40 +02:00
DOMParsing
DOMURL
Encoding
EntriesAPI LibWeb/EntriesAPI: Implement FileSystemEntry 2024-08-24 14:53:11 +02:00
Fetch Everywhere: Convert from_string_view -> from_string_literal where static 2024-09-11 10:59:04 +01:00
FileAPI LibWeb/FileAPI: Add [Clamp] extended attribute to Blob.slice 2024-08-23 12:08:11 +01:00
Geometry
HighResolutionTime
HTML LibWeb/HTML: Select html input elements with selectable text 2024-09-22 06:43:57 +02:00
IndexedDB
Infra
Internals LibWeb: Add a test-only API to spoof the current URL and origin 2024-09-20 22:41:24 +01:00
IntersectionObserver LibWeb: Remove uses of obsolete PlatformObject::global_object() 2024-09-07 11:37:49 +02:00
Layout LibWeb: Move initial creation of Unicode segmenters to the Document 2024-09-22 18:42:31 +02:00
Loader LibWeb: Make CSS font loader tolerate WPT web server shenanigans 2024-09-21 19:20:30 +02:00
MathML LibWeb: MathMLElement includes ElementCSSInlineStyle 2024-09-07 19:44:56 +02:00
MediaCapabilitiesAPI LibWeb: Stub MediaCapabilities IDL interface 2024-09-05 14:52:26 +01:00
MimeSniff
MixedContent
NavigationTiming LibWeb: Normalize all WebIDL definition lines to four leading spaces 2024-09-10 21:16:53 +01:00
Page LibWeb: Move initial creation of Unicode segmenters to the Document 2024-09-22 18:42:31 +02:00
Painting LibWeb: Implement Range's extension method 2024-09-20 19:58:20 +02:00
PerformanceTimeline
PermissionsPolicy
Platform LibMedia: Absorb LibAudio 2024-09-12 10:01:19 +02:00
ReferrerPolicy
RequestIdleCallback LibWeb: Remove uses of obsolete PlatformObject::global_object() 2024-09-07 11:37:49 +02:00
ResizeObserver
SecureContexts
Selection LibWeb: Update Selection.collapse algorithm 2024-09-03 17:42:13 +02:00
SRI
StorageAPI LibWeb: Implement StorageKey and related AOs from Storage specification 2024-09-20 22:41:24 +01:00
Streams LibWeb: Normalize all WebIDL definition lines to four leading spaces 2024-09-10 21:16:53 +01:00
SVG LibWeb: Let style elements remember which StyleSheetList they live in 2024-09-21 08:56:01 +02:00
UIEvents LibWeb: Defined all the keycodes 2024-09-14 10:38:33 +01:00
UserTiming
WebAssembly LibWeb/WebAssembly: Use a debug flag for dbgln calls 2024-09-07 19:44:23 +02:00
WebAudio
WebDriver LibWeb/WebDriver: Use correct dimensions for WPT reftest screenshots 2024-09-16 09:11:52 -04:00
WebGL
WebIDL
WebSockets LibWeb: Add [Clamp] extended attribute to WebSocket.close 2024-08-24 14:52:27 +02:00
Worker LibWeb: Use proper enums in WorkerOptions dictionary 2024-09-20 22:41:24 +01:00
XHR LibWeb/XHR: Expose FormData to Worker 2024-08-22 19:52:06 -06:00
XLink
XML
CMakeLists.txt LibWeb/CSS: Extract interpolation code into its own files 2024-09-22 06:41:55 +02:00
Dump.cpp LibWeb/CSS: Add CSSOM types for @layer rules 2024-09-06 07:49:55 +02:00
Dump.h LibWeb/CSS: Add CSSOM types for @layer rules 2024-09-06 07:49:55 +02:00
Forward.h LibWeb/CSS: Rename CalculatedStyleValue -> CSSMathValue 2024-09-18 20:38:41 +01:00
idl_files.cmake LibWeb: Add stub of ServiceWorker interface 2024-09-20 22:41:24 +01:00
InvalidateDisplayList.h LibWeb: Invalidate the display list when calling set_needs_display() 2024-09-02 20:12:08 +02:00
Namespace.cpp
Namespace.h
PixelUnits.cpp
PixelUnits.h
TraversalDecision.h
TraversalOrder.h LibWeb/CSS: Replace style-rule iteration methods with a generic one 2024-09-06 07:49:55 +02:00
TreeNode.h