Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a26105eb6359c033c186c2f35398be2e7ab6363f
      
https://github.com/WebKit/WebKit/commit/a26105eb6359c033c186c2f35398be2e7ab6363f
  Author: Sam Weinig <[email protected]>
  Date:   2025-07-05 (Sat, 05 Jul 2025)

  Changed paths:
    M Source/WTF/wtf/IteratorRange.h
    M Source/WebCore/CMakeLists.txt
    M Source/WebCore/Headers.cmake
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/animation/CSSAnimation.cpp
    M Source/WebCore/animation/ScrollTimeline.cpp
    M Source/WebCore/animation/ScrollTimeline.h
    M Source/WebCore/animation/StyleOriginatedTimelinesController.cpp
    M Source/WebCore/animation/StyleOriginatedTimelinesController.h
    M Source/WebCore/animation/ViewTimeline.cpp
    M Source/WebCore/animation/ViewTimeline.h
    A Source/WebCore/animation/WebAnimationTypes.cpp
    M Source/WebCore/animation/WebAnimationTypes.h
    M Source/WebCore/animation/WebAnimationUtilities.cpp
    M Source/WebCore/css/CSSProperties.json
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Color.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Image.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Shapes.cpp
    M Source/WebCore/css/values/CSSValueAggregates.h
    M Source/WebCore/css/values/borders/CSSBorderRadius.cpp
    M Source/WebCore/css/values/filter-effects/CSSAppleColorFilterProperty.h
    M Source/WebCore/css/values/filter-effects/CSSFilterProperty.h
    M Source/WebCore/dom/ViewTransition.cpp
    M Source/WebCore/editing/Editor.cpp
    M Source/WebCore/platform/animation/Animation.h
    M Source/WebCore/rendering/EllipsisBoxPainter.cpp
    M Source/WebCore/rendering/RenderBox.cpp
    M Source/WebCore/rendering/RenderTheme.cpp
    M Source/WebCore/rendering/StyledMarkedText.cpp
    M Source/WebCore/rendering/StyledMarkedText.h
    M Source/WebCore/rendering/TextBoxPainter.cpp
    M Source/WebCore/rendering/TextDecorationPainter.cpp
    M Source/WebCore/rendering/TextDecorationPainter.h
    M Source/WebCore/rendering/TextPaintStyle.cpp
    M Source/WebCore/rendering/TextPaintStyle.h
    M Source/WebCore/rendering/TextPainter.cpp
    M Source/WebCore/rendering/TextPainter.h
    M Source/WebCore/rendering/cocoa/RenderThemeCocoa.mm
    M Source/WebCore/rendering/mac/RenderThemeMac.mm
    M Source/WebCore/rendering/style/RenderStyle.cpp
    M Source/WebCore/rendering/style/RenderStyle.h
    M Source/WebCore/rendering/style/RenderStyleInlines.h
    M Source/WebCore/rendering/style/RenderStyleSetters.h
    M Source/WebCore/rendering/style/SVGRenderStyleDefs.cpp
    M Source/WebCore/rendering/style/SVGRenderStyleDefs.h
    M Source/WebCore/rendering/style/StyleMiscNonInheritedData.cpp
    M Source/WebCore/rendering/style/StyleMiscNonInheritedData.h
    M Source/WebCore/rendering/style/StyleRareInheritedData.cpp
    M Source/WebCore/rendering/style/StyleRareInheritedData.h
    M Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp
    M Source/WebCore/rendering/style/StyleRareNonInheritedData.h
    M Source/WebCore/rendering/svg/RenderSVGBlock.cpp
    M Source/WebCore/rendering/svg/RenderSVGText.cpp
    M Source/WebCore/rendering/svg/SVGTextBoxPainter.cpp
    M Source/WebCore/rendering/svg/legacy/LegacyRenderSVGModelObject.cpp
    M Source/WebCore/style/AnchorPositionEvaluator.cpp
    A Source/WebCore/style/ScopedName.cpp
    M Source/WebCore/style/ScopedName.h
    M Source/WebCore/style/StyleBuilderConverter.h
    M Source/WebCore/style/StyleBuilderCustom.h
    M Source/WebCore/style/StyleExtractorConverter.h
    M Source/WebCore/style/StyleExtractorCustom.h
    M Source/WebCore/style/StyleExtractorSerializer.h
    M Source/WebCore/style/StyleInterpolationWrappers.h
    M Source/WebCore/style/Styleable.cpp
    A Source/WebCore/style/values/StyleValueTypes+CSSValueConversion.h
    M Source/WebCore/style/values/StyleValueTypes.h
    A Source/WebCore/style/values/anchor-position/StyleAnchorName.h
    M Source/WebCore/style/values/borders/StyleBoxShadow.cpp
    M Source/WebCore/style/values/borders/StyleBoxShadow.h
    M Source/WebCore/style/values/borders/StyleShadow.h
    A Source/WebCore/style/values/contain/StyleContainerName.h
    A 
Source/WebCore/style/values/primitives/StylePrimitiveKeyword+CSSValueConversion.h
    A Source/WebCore/style/values/scroll-animations/StyleProgressTimelineAxes.h
    A 
Source/WebCore/style/values/scroll-animations/StyleProgressTimelineName.cpp
    A Source/WebCore/style/values/scroll-animations/StyleProgressTimelineName.h
    A Source/WebCore/style/values/scroll-animations/StyleScrollTimelines.h
    A Source/WebCore/style/values/scroll-animations/StyleViewTimelineInsets.cpp
    A Source/WebCore/style/values/scroll-animations/StyleViewTimelineInsets.h
    A Source/WebCore/style/values/scroll-animations/StyleViewTimelines.h
    M Source/WebCore/style/values/shapes/StyleShapeFunction.cpp
    M Source/WebCore/style/values/text-decoration/StyleTextShadow.cpp
    M Source/WebCore/style/values/text-decoration/StyleTextShadow.h
    A Source/WebCore/style/values/view-transitions/StyleViewTransitionClass.h

  Log Message:
  -----------
  [Style] Adopt strong style types for properties using FixedVector
https://bugs.webkit.org/show_bug.cgi?id=295291

Reviewed by Darin Adler.

Converts most of the remaining list properties to strong style types.

- Adds new aggregates SpaceSeparatedFixedVector and CommaSeparatedFixedVector
  to compliment the existing SpaceSeparatedVector and CommaSeparatedVector but
  for FixedVector.
- Beefs up ListOrNone adaptor to allow basic list operations.
- Adds a new adaptor, ListOrDefault, which rather than using the empty list
  value for `none`, allows clients to specify a "default" value to use when
  the list is empty. This means it can never actually appear empty. Useful
  for properties like `scroll-timeline-axis` where they defined to never be
  empty.
- Adds support for automatic conversion from CSSValue to new FixedVector
  aggregates and ListOr* adaptors.
- Makes WTF::makeReversedRange reflect whether the provided range had a
  `size()` function, allowing for more efficient uses, such as when provided
  to FixedVector::map.

* Source/WTF/wtf/IteratorRange.h:
* Source/WebCore/CMakeLists.txt:
* Source/WebCore/Headers.cmake:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/animation/CSSAnimation.cpp:
* Source/WebCore/animation/ScrollTimeline.cpp:
* Source/WebCore/animation/ScrollTimeline.h:
* Source/WebCore/animation/StyleOriginatedTimelinesController.cpp:
* Source/WebCore/animation/StyleOriginatedTimelinesController.h:
* Source/WebCore/animation/ViewTimeline.cpp:
* Source/WebCore/animation/ViewTimeline.h:
* Source/WebCore/animation/WebAnimationTypes.cpp: Added.
* Source/WebCore/animation/WebAnimationTypes.h:
* Source/WebCore/animation/WebAnimationUtilities.cpp:
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/values/CSSValueAggregates.h:
* Source/WebCore/css/values/filter-effects/CSSAppleColorFilterProperty.h:
* Source/WebCore/css/values/filter-effects/CSSFilterProperty.h:
* Source/WebCore/dom/ViewTransition.cpp:
* Source/WebCore/editing/Editor.cpp:
* Source/WebCore/platform/animation/Animation.h:
* Source/WebCore/rendering/EllipsisBoxPainter.cpp:
* Source/WebCore/rendering/RenderBox.cpp:
* Source/WebCore/rendering/RenderTheme.cpp:
* Source/WebCore/rendering/StyledMarkedText.cpp:
* Source/WebCore/rendering/StyledMarkedText.h:
* Source/WebCore/rendering/TextBoxPainter.cpp:
* Source/WebCore/rendering/TextDecorationPainter.cpp:
* Source/WebCore/rendering/TextDecorationPainter.h:
* Source/WebCore/rendering/TextPaintStyle.cpp:
* Source/WebCore/rendering/TextPaintStyle.h:
* Source/WebCore/rendering/TextPainter.cpp:
* Source/WebCore/rendering/TextPainter.h:
* Source/WebCore/rendering/cocoa/RenderThemeCocoa.mm:
* Source/WebCore/rendering/mac/RenderThemeMac.mm:
* Source/WebCore/rendering/style/RenderStyle.cpp:
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/RenderStyleInlines.h:
* Source/WebCore/rendering/style/RenderStyleSetters.h:
* Source/WebCore/rendering/style/SVGRenderStyleDefs.cpp:
* Source/WebCore/rendering/style/SVGRenderStyleDefs.h:
* Source/WebCore/rendering/style/StyleMiscNonInheritedData.cpp:
* Source/WebCore/rendering/style/StyleMiscNonInheritedData.h:
* Source/WebCore/rendering/style/StyleRareInheritedData.cpp:
* Source/WebCore/rendering/style/StyleRareInheritedData.h:
* Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp:
* Source/WebCore/rendering/style/StyleRareNonInheritedData.h:
* Source/WebCore/rendering/svg/RenderSVGBlock.cpp:
* Source/WebCore/rendering/svg/RenderSVGText.cpp:
* Source/WebCore/rendering/svg/SVGTextBoxPainter.cpp:
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGModelObject.cpp:
* Source/WebCore/style/AnchorPositionEvaluator.cpp:
* Source/WebCore/style/ScopedName.cpp: Added.
* Source/WebCore/style/ScopedName.h:
* Source/WebCore/style/StyleBuilderConverter.h:
* Source/WebCore/style/StyleBuilderCustom.h:
* Source/WebCore/style/StyleExtractorConverter.h:
* Source/WebCore/style/StyleExtractorCustom.h:
* Source/WebCore/style/StyleExtractorSerializer.h:
* Source/WebCore/style/StyleInterpolationWrappers.h:
* Source/WebCore/style/Styleable.cpp:
* Source/WebCore/style/values/StyleValueTypes+CSSValueConversion.h: Added.
* Source/WebCore/style/values/anchor-position/StyleAnchorName.h: Added.
* Source/WebCore/style/values/borders/StyleBoxShadow.cpp:
* Source/WebCore/style/values/borders/StyleBoxShadow.h:
* Source/WebCore/style/values/borders/StyleShadow.h:
* Source/WebCore/style/values/contain/StyleContainerName.h: Added.
* 
Source/WebCore/style/values/primitives/StylePrimitiveKeyword+CSSValueConversion.h:
 Added.
* Source/WebCore/style/values/scroll-animations/StyleProgressTimelineAxes.h: 
Added.
* Source/WebCore/style/values/scroll-animations/StyleProgressTimelineName.cpp: 
Added.
* Source/WebCore/style/values/scroll-animations/StyleProgressTimelineName.h: 
Added.
* Source/WebCore/style/values/scroll-animations/StyleScrollTimelines.h: Added.
* Source/WebCore/style/values/scroll-animations/StyleViewTimelineInsets.cpp: 
Added.
* Source/WebCore/style/values/scroll-animations/StyleViewTimelineInsets.h: 
Added.
* Source/WebCore/style/values/scroll-animations/StyleViewTimelines.h: Added.
* Source/WebCore/style/values/text-decoration/StyleTextShadow.cpp:
* Source/WebCore/style/values/text-decoration/StyleTextShadow.h:
* Source/WebCore/style/values/view-transitions/StyleViewTransitionClass.h: 
Added.

Canonical link: https://commits.webkit.org/297032@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