Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dc119b7139d872ff07841d797dbd6122ebdcfa2a
      
https://github.com/WebKit/WebKit/commit/dc119b7139d872ff07841d797dbd6122ebdcfa2a
  Author: Sam Weinig <[email protected]>
  Date:   2025-06-02 (Mon, 02 Jun 2025)

  Changed paths:
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/css/parser/CSSPropertyParserCustom.h
    M Source/WebCore/css/values/CSSValueAggregates.h
    M Source/WebCore/css/values/CSSValueTypes.cpp
    M Source/WebCore/css/values/CSSValueTypes.h
    M Source/WebCore/css/values/borders/CSSBorderRadius.h
    M 
Source/WebCore/css/values/primitives/CSSPrimitiveNumericTypes+CSSValueCreation.h
    M Source/WebCore/css/values/shapes/CSSShapeFunction.h
    M Source/WebCore/style/StyleExtractorConverter.h
    M Source/WebCore/style/StyleExtractorSerializer.h
    M Source/WebCore/style/values/StyleValueTypes.h
    M Source/WebCore/style/values/borders/StyleBorderRadius.h
    M Source/WebCore/style/values/borders/StyleCornerShapeValue.cpp
    M Source/WebCore/style/values/borders/StyleCornerShapeValue.h
    M Source/WebCore/style/values/color-adjust/StyleColorScheme.cpp
    M Source/WebCore/style/values/color-adjust/StyleColorScheme.h
    M Source/WebCore/style/values/color/StyleColor.cpp
    M Source/WebCore/style/values/color/StyleColor.h
    M Source/WebCore/style/values/color/StyleDynamicRangeLimit.cpp
    M Source/WebCore/style/values/color/StyleDynamicRangeLimit.h
    M Source/WebCore/style/values/primitives/StylePrimitiveNumeric.h
    A 
Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+CSSValueCreation.h
    M 
Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+Conversions.h
    M 
Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+Evaluation.h
    M 
Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+Logging.h
    A 
Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+Serialization.h
    M Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes.h
    M Source/WebCore/style/values/primitives/StyleURL.cpp
    M Source/WebCore/style/values/primitives/StyleURL.h
    M Source/WebCore/style/values/scroll-snap/StyleScrollMargin.h
    M Source/WebCore/style/values/scroll-snap/StyleScrollPadding.h
    M Source/WebCore/style/values/shapes/StyleShapeFunction.h
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in

  Log Message:
  -----------
  [Extractor] Support direct serialization and conversion to CSSValue from 
Style value objects
https://bugs.webkit.org/show_bug.cgi?id=293877

Reviewed by Darin Adler.

To serialize a Style value object for getComputedStyle purposes, adds a new 
`Style::serializationForCSS`
function and corresponding `Style::Serializer` specializable struct interface. 
This
interface differs from `CSS::serializationForCSS` in that it takes a 
`RenderStyle`
in addition to the existing arguments.

To convert a Style value object to a CSSValue for getComputedStyle purposes, 
adds a
new `Style::createCSSValue` function and corresponding `Style::CSSValueCreation`
specializable struct interface. This interface differs from 
`CSS::createCSSValue`
in the same way as above, in that it takes a `RenderStyle` in addition to the
existing arguments. Additionally, `CSS::CSSValueCreation` has been moved to
CSSValueTypes.h, been given a `CSSValuePool` argument and made to work generally
with ranged, tuple and variant value types.

To avoid ambiguity, a new `MinimallySerializingSpaceSeparatedSize` type has been
added for use in places where coalescing is needed. It is specialized to return
a coalescing `CSSValuePair`. All other non-"MinimallySerializing" tuple types
convert to a `CSSValueList`.

* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/values/CSSValueAggregates.h:
* Source/WebCore/css/values/CSSValueTypes.cpp:
* Source/WebCore/css/values/CSSValueTypes.h:
* Source/WebCore/css/values/borders/CSSBorderRadius.h:
* 
Source/WebCore/css/values/primitives/CSSPrimitiveNumericTypes+CSSValueCreation.h:
* Source/WebCore/css/values/shapes/CSSShapeFunction.h:
* Source/WebCore/style/StyleExtractorConverter.h:
* Source/WebCore/style/StyleExtractorSerializer.h:
* Source/WebCore/style/values/StyleValueTypes.h:
* Source/WebCore/style/values/borders/StyleBorderRadius.h:
* Source/WebCore/style/values/borders/StyleCornerShapeValue.cpp:
* Source/WebCore/style/values/borders/StyleCornerShapeValue.h:
* Source/WebCore/style/values/color-adjust/StyleColorScheme.cpp:
* Source/WebCore/style/values/color-adjust/StyleColorScheme.h:
* Source/WebCore/style/values/color/StyleColor.cpp:
* Source/WebCore/style/values/color/StyleColor.h:
* Source/WebCore/style/values/color/StyleDynamicRangeLimit.cpp:
* Source/WebCore/style/values/color/StyleDynamicRangeLimit.h:
* Source/WebCore/style/values/primitives/StylePrimitiveNumeric.h:
* 
Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+CSSValueCreation.h:
 Added.
* 
Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+Conversions.h:
* 
Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+Evaluation.h:
* Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+Logging.h:
* 
Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes+Serialization.h:
 Added.
* Source/WebCore/style/values/primitives/StylePrimitiveNumericTypes.h:
* Source/WebCore/style/values/primitives/StyleURL.cpp:
* Source/WebCore/style/values/primitives/StyleURL.h:
* Source/WebCore/style/values/scroll-snap/StyleScrollMargin.h:
* Source/WebCore/style/values/scroll-snap/StyleScrollPadding.h:
* Source/WebCore/style/values/shapes/StyleShapeFunction.h:
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:

Canonical link: https://commits.webkit.org/295702@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to