ladybird/Libraries/LibWeb
Sam Atkins 83bb92c4e0 LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties
We previously had PropertyOwningCSSStyleDeclaration and
ResolvedCSSStyleDeclaration, representing the current style properties
and resolved style respectively. Both of these were the
CSSStyleDeclaration type in the CSSOM. (We also had
ElementInlineCSSStyleDeclaration but I removed that in a previous
commit.)

In the meantime, the spec has changed so that these should now be a new
CSSStyleProperties type in the CSSOM. Also, we need to subclass
CSSStyleDeclaration for things like CSSFontFaceRule's list of
descriptors, which means it wouldn't hold style properties.

So, this commit does the fairly messy work of combining these two types
into a new CSSStyleProperties class. A lot of what previously was done
as separate methods in the two classes, now follows the spec steps of
"if the readonly flag is set, do X" instead, which is hopefully easier
to follow too.

There is still some functionality in CSSStyleDeclaration that belongs in
CSSStyleProperties, but I'll do that next. To avoid a huge diff for
"CSSStyleDeclaration-all-supported-properties-and-default-values.txt"
both here and in the following commit, we don't apply the (currently
empty) CSSStyleProperties prototype yet.
2025-03-19 13:53:00 +00:00
..
Animations LibWeb: Skip animation invalidation for elements nested in display none 2025-03-09 00:06:13 +01:00
ARIA LibWeb: Sync AriaRoles.json w/ Characteristics data in current spec 2025-02-21 09:08:56 +00:00
Bindings LibWeb: Fire slotchange events when a slot is changed 2025-03-10 14:37:26 -04:00
Clipboard Everywhere: Replace miscellaneous references to the chrome process 2025-03-15 19:57:27 -04:00
Compression LibWeb: Use get_buffer_source_copy for getting the actual byte buffer 2025-03-19 13:46:50 +01:00
ContentSecurityPolicy LibWeb: Enforce Content Security Policy of Fetch responses 2025-03-19 00:55:14 +01:00
Cookie Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
CredentialManagement LibWeb: Stub for Credential Management API 2025-02-05 13:18:47 -07:00
Crypto LibCrypto+LibWeb: Refactor AES implementation with OpenSSL 2025-03-02 15:11:38 +01:00
CSS LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties 2025-03-19 13:53:00 +00:00
DOM LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties 2025-03-19 13:53:00 +00:00
DOMURL LibURL+LibWeb: Ensure opaque paths always roundtrip 2025-03-18 12:17:19 +00:00
Editing LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties 2025-03-19 13:53:00 +00:00
Encoding LibWeb/Bindings: Support returning nullable types in dictionaries 2025-02-10 17:05:15 +00:00
EncryptedMediaExtensions LibWeb: Improve Enum generation in IDLGenerator 2025-03-04 16:35:04 +00:00
EntriesAPI LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
EventTiming LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
Fetch LibWeb: Enforce Content Security Policy of Fetch responses 2025-03-19 00:55:14 +01:00
FileAPI LibWeb: Implement FileReaderSync interface 2025-02-28 04:49:51 +00:00
Geometry LibWeb/CSS: Integrate ParsingContext into the Parser 2025-02-06 16:47:25 +00:00
HighResolutionTime LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
HTML LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties 2025-03-19 13:53:00 +00:00
IndexedDB LibWeb/IDB: Implement IDBFactory::databases() 2025-03-14 08:54:39 +01:00
Infra LibWeb/CSP: Introduce the ability to create and report a violation 2025-03-19 00:55:14 +01:00
Internals LibWeb: Rename internals.signalTextTestIsDone() to signalTestIsDone() 2025-03-18 20:09:46 +01:00
IntersectionObserver LibWeb/CSS: Integrate ParsingContext into the Parser 2025-02-06 16:47:25 +00:00
Layout LibWeb: Implement "transferred size suggestion" part of GFC spec 2025-03-19 10:21:54 +01:00
Loader LibWeb+WebContent: Remove "chrome" from generated page template strings 2025-03-15 19:57:27 -04:00
MathML LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
MediaCapabilitiesAPI LibWeb: Implement MediaCapabilities.decodingInfo() 2025-02-18 10:18:40 -07:00
MediaSourceExtensions LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
MimeSniff Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
MixedContent AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
NavigationTiming LibWeb: Return wall time from PerformanceTiming interface 2025-01-27 14:53:33 +01:00
Page LibWeb: Rename internals.signalTextTestIsDone() to signalTestIsDone() 2025-03-18 20:09:46 +01:00
Painting LibWeb: Do not calculate corner radii if no radius is set 2025-03-19 14:22:10 +01:00
PerformanceTimeline LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
PermissionsPolicy Everywhere: Remove some use of the URL constructors 2025-02-19 08:01:35 -05:00
Platform LibWeb: Protect audio codec callbacks against its own destruction 2025-03-14 12:02:29 -05:00
ReferrerPolicy LibURL+LibWeb: Make URL::serialize return a String 2024-12-04 16:34:13 +00:00
RequestIdleCallback LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
ResizeObserver AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
ResourceTiming LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
SecureContexts Everywhere: Use URL::about_XXX factory functions 2025-02-15 17:05:55 +00:00
Selection LibWeb: Only clear command states and values if range actually changed 2025-01-24 23:53:26 +01:00
ServiceWorker LibWeb/ServiceWorker: Use has_value for checking for invalid URL 2025-02-19 08:01:35 -05:00
SRI Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
StorageAPI LibWeb/Storage: Add a storage key getter that takes a URL::Origin 2025-01-21 19:22:07 +00:00
Streams LibWeb: Align ReadableByteStreamControllerEnqueue 2025-02-10 13:25:51 +00:00
SVG LibWeb/SVG: Work around no layout node in SVGCircleElement::get_path 2025-03-17 20:10:11 +01:00
TrustedTypes LibWeb: Update Document.write spec steps 2025-02-25 15:19:38 +01:00
UIEvents LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
URLPattern LibWeb/URLPattern: Implement IDL interface for URLPattern test and exec 2025-03-04 16:32:09 -05:00
UserTiming LibWeb: Report performance based timestamps relative to ESO time origin 2025-01-27 14:53:33 +01:00
WebAssembly LibGC: Rename MarkedVector => RootVector 2024-12-26 19:10:44 +01:00
WebAudio LibWeb: Initialize AnalyserNode previous block at construction time 2025-02-13 20:31:37 +00:00
WebDriver AK+Everywhere: Convert JSON value serialization to String 2025-02-20 19:27:51 -05:00
WebGL LibWeb/WebGL2: Implement EXT_color_buffer_float extension 2025-03-06 12:59:28 +01:00
WebIDL LibWeb: Remove unused underlying_buffer_source function 2025-03-19 13:46:50 +01:00
WebSockets LibWeb: Don't close websocket if already closed in make_disappear() AO 2025-02-26 20:20:22 +01:00
WebVTT LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
Worker Everywhere: Include HashMap only where it's actually used 2024-12-09 12:31:16 +01:00
XHR LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
XLink LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
XML LibXML: Associate prefixed elements with the correct namespace 2025-02-25 15:02:35 +01:00
CMakeLists.txt LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties 2025-03-19 13:53:00 +00:00
Dump.cpp LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties 2025-03-19 13:53:00 +00:00
Dump.h LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties 2025-03-19 13:53:00 +00:00
Forward.h LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties 2025-03-19 13:53:00 +00:00
idl_files.cmake LibWeb/CSS: Merge style declaration subclasses into CSSStyleProperties 2025-03-19 13:53:00 +00:00
InvalidateDisplayList.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
Namespace.cpp LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
Namespace.h LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
PixelUnits.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
PixelUnits.h LibWeb: Clamp layout content sizes to a max value instead of crashing 2025-02-05 18:28:55 +01:00
TraversalDecision.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
TraversalOrder.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
TreeNode.h LibWeb/DOM: Don't use recursion for subtree traversal in Node.h 2025-02-03 18:36:57 +01:00