Bug 315309

Summary: Refactor DeprecatedCSSOMValue types to not wrap CSSValue (Part 1)
Product: WebKit Reporter: Sam Weinig <sam>
Component: CSSAssignee: Sam Weinig <sam>
Status: RESOLVED FIXED    
Severity: Normal CC: koivisto, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Safari 18   
Hardware: Unspecified   
OS: Unspecified   

Sam Weinig
Reported 2026-05-21 11:14:41 PDT
Refactor DeprecatedCSSOMValue types to not wrap CSSValue (Part 1). Add infrastructure for creating DeprecatedCSSOMValues for strong CSS and Style types directly. - Add a lazy serialization subclass that uses a WTF::Function to type-erase the strong type. - Add DeprecatedCSSOMValueCreation protocols for both CSS and Style, allowing direct creation of the values.
Attachments
Sam Weinig
Comment 1 2026-05-21 11:28:30 PDT
Future changes in this series will: - Change DeprecatedCSSOMPrimitiveValue to use a Variant backing of the supported primitive types rather than the current CSSValue. - Remove DeprecatedCSSOMComplexValue, replacing remaining uses with DeprecatedCSSOMLazySerializingCustomValue. - Add support in StyleExtractor for directly creating the appropriate DeprecatedCSSOMValue for Style types.
Sam Weinig
Comment 2 2026-05-21 11:40:20 PDT
EWS
Comment 3 2026-05-23 07:23:25 PDT
Committed 313787@main (4b973b0b8ca7): <https://commits.webkit.org/313787@main> Reviewed commits have been landed. Closing PR #65424 and removing active labels.
Radar WebKit Bug Importer
Comment 4 2026-05-23 07:24:13 PDT
Note You need to log in before you can comment on or make changes to this bug.