Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: fa528776309b4a862765811e24ddb0c9c558564b
      
https://github.com/WebKit/WebKit/commit/fa528776309b4a862765811e24ddb0c9c558564b
  Author: Sam Weinig <[email protected]>
  Date:   2025-03-23 (Sun, 23 Mar 2025)

  Changed paths:
    M Source/WebCore/CMakeLists.txt
    M Source/WebCore/Headers.cmake
    M Source/WebCore/SaferCPPExpectations/RefCntblBaseVirtualDtorExpectations
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    R Source/WebCore/css/CSSLineBoxContainValue.cpp
    R Source/WebCore/css/CSSLineBoxContainValue.h
    M Source/WebCore/css/CSSOffsetRotateValue.h
    M Source/WebCore/css/CSSProperties.json
    M Source/WebCore/css/CSSValue.cpp
    M Source/WebCore/css/CSSValue.h
    M Source/WebCore/css/ComputedStyleExtractor.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Anchor.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Anchor.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Inline.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Inline.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Motion.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Motion.h
    R Source/WebCore/css/parser/CSSPropertyParserConsumer+Overflow.cpp
    R Source/WebCore/css/parser/CSSPropertyParserConsumer+Overflow.h
    R Source/WebCore/css/parser/CSSPropertyParserConsumer+Page.cpp
    R Source/WebCore/css/parser/CSSPropertyParserConsumer+Page.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Ratio.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+TextDecoration.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+TextDecoration.h
    M Source/WebCore/css/scripts/process-css-properties.py
    M Source/WebCore/css/scripts/test/TestCSSProperties.json
    M 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyNames.gperf
    M 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyNames.h
    M 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyParsing.cpp
    M 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSStyleDeclaration+PropertyNames.idl
    M 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleBuilderGenerated.cpp
    M 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleInterpolationWrapperMap.cpp
    M Source/WebCore/layout/formattingContexts/inline/InlineLevelBox.h
    M Source/WebCore/layout/formattingContexts/inline/InlineLevelBoxInlines.h
    M Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp
    M Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
    M Source/WebCore/layout/formattingContexts/inline/InlineQuirks.cpp
    M Source/WebCore/rendering/LegacyRootInlineBox.cpp
    M Source/WebCore/rendering/RenderBlock.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/StyleRareInheritedData.cpp
    M Source/WebCore/rendering/style/StyleRareInheritedData.h
    M Source/WebCore/rendering/updating/RenderTreeBuilderFirstLetter.cpp
    M Source/WebCore/style/StyleBuilderConverter.h
    A Source/WebCore/style/values/inline/StyleLineBoxContain.h
    M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj

  Log Message:
  -----------
  Add support for generating a consumer for CSS properties that require custom 
types for unordered groups
https://bugs.webkit.org/show_bug.cgi?id=289983

Reviewed by Antti Koivisto.

- Adds support for custom types on "match one more any order" (||) groups.
- Adds support for custom types on "match all any order" (&&) groups.
- Adds support for the single item optimization for bounded repetition patterns.
- Adds support for the settings flag annotation on "match one" groups.

Removes CSSLineBoxContainValue CSSValue subclass. Uses CSSValueList instead,
with the option set getting built at style building time.

These allow the generation of:
    offset-rotate
    -webkit-line-box-contain
    text-underline-position
    scrollbar-gutter
    position-visibility
    @page size

* Source/WebCore/CMakeLists.txt:
* Source/WebCore/Headers.cmake:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
    - Remove no longer needed files. Add StyleLineBoxContain.h

* Source/WebCore/css/CSSProperties.json:
    - Update grammar with annotations.

* Source/WebCore/css/CSSValue.cpp:
* Source/WebCore/css/CSSValue.h:
* Source/WebCore/css/CSSLineBoxContainValue.cpp: Removed.
* Source/WebCore/css/CSSLineBoxContainValue.h: Removed.
* Source/WebCore/css/ComputedStyleExtractor.cpp:
* Source/WebCore/style/values/inline/StyleLineBoxContain.h: Added.
* Source/WebCore/layout/formattingContexts/inline/InlineLevelBox.h:
* Source/WebCore/layout/formattingContexts/inline/InlineLevelBoxInlines.h:
* Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp:
* Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp:
* Source/WebCore/layout/formattingContexts/inline/InlineQuirks.cpp:
* Source/WebCore/rendering/LegacyRootInlineBox.cpp:
* Source/WebCore/rendering/RenderBlock.cpp:
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/RenderStyleInlines.h:
* Source/WebCore/rendering/style/RenderStyleSetters.h:
* Source/WebCore/rendering/style/StyleRareInheritedData.cpp:
* Source/WebCore/rendering/style/StyleRareInheritedData.h:
* Source/WebCore/rendering/updating/RenderTreeBuilderFirstLetter.cpp:
* Source/WebCore/style/StyleBuilderConverter.h:
    - By replacing CSSLineBoxContainValue with a CSSValueList, the style 
representation
      had to move as well and now lives in style/values. Update users 
accordingly.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Overflow.cpp: Removed.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Overflow.h: Removed.
    - Remove empty file.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Page.cpp: Removed.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Page.h: Removed.
    - Remove no longer used consumeSize. File now empty so removed.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Anchor.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Anchor.h:
    - Remove no longer used consumePositionVisibility.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Inline.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Inline.h:
    - Remove no longer used consumeWebkitLineBoxContain.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Motion.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Motion.h:
    - Remove no longer used consumeOffsetRotate.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Page.cpp: Removed.
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Page.h: Removed.
    - Remove no longer used consumeSize.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+TextDecoration.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+TextDecoration.h:
    - Remove no longer used consumeTextUnderlinePosition.

* Source/WebCore/css/scripts/process-css-properties.py:
    - Add new support to parser generators.

* Source/WebCore/css/scripts/test/TestCSSProperties.json:
* 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyNames.gperf:
* Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyNames.h:
* 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyParsing.cpp:
* 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSStyleDeclaration+PropertyNames.idl:
* 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleBuilderGenerated.cpp:
* 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleInterpolationWrapperMap.cpp:
    - Add new test cases and update results.

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