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

  Changed paths:
    M Source/WebCore/SaferCPPExpectations/RefCntblBaseVirtualDtorExpectations
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/animation/TimelineRange.cpp
    M Source/WebCore/animation/ViewTimeline.cpp
    R Source/WebCore/css/CSSFontVariantAlternatesValue.cpp
    R Source/WebCore/css/CSSFontVariantAlternatesValue.h
    M Source/WebCore/css/CSSProperties.json
    M Source/WebCore/css/CSSValue.cpp
    M Source/WebCore/css/CSSValue.h
    M Source/WebCore/css/CSSVariableReferenceValue.h
    M Source/WebCore/css/ComputedStyleExtractor.cpp
    M Source/WebCore/css/FontVariantBuilder.cpp
    M Source/WebCore/css/FontVariantBuilder.h
    M Source/WebCore/css/parser/CSSPropertyParser.cpp
    M 
Source/WebCore/css/parser/CSSPropertyParserConsumer+CSSPrimitiveValueResolver.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Font.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Font.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+List.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Masking.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Masking.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Timeline.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Timeline.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Transform.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Transform.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/CSSPropertyParsing.h
    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/style/StyleBuilderCustom.h
    M Tools/Scripts/webkitpy/style/checkers/jsonchecker.py

  Log Message:
  -----------
  Add support for generating a consumer for CSS properties that use function 
notation with multiple parameters
https://bugs.webkit.org/show_bug.cgi?id=289549

Reviewed by Darin Adler.

Add support for generating consumers for CSS property that use function
notation with multiple parameters.

Additionally, allow shared rules to be proxied to an external function
via a new "grammar-function" field (mirroring the parser-grammar-function
field for properties) along with the associated unused and unused reason
fields. This allows for generating more partial grammars for things like
`transform` or `animation-timeline`, where most of the grammar can be
generated, but a few select productions require custom code.

A new primitive, <number-or-percentage-resolved-to-number> was added to
represent [ <number> | <percentage> ] usages where the percentage must
resolve to a number, even for specified values. It it is a bit unfortunate
to deviate from the spec grammars for this (and for [ <angle> | <zero> ],
which is written as <angle unitless-zero=allowed> in the JSON file), and
should be revisited later.

To make font-variant-alternates work, the specified value representation
was switched from a custom CSSValue subclass to using standard CSSValueList
and CSSFunctionValue types. This meant moving resolution to the platform
type to style building, which matches the other font-variant-* properties.

Support for custom types was added for unbounded repetition terms to allow
CSSTransformListValue to be used for transforms, needed by the typed CSSOM.

These allow generation of:
    animation-range-start
    animation-range-end
    animation-timeline
    clip
    font-variant-alternates
    @font-face font-variant-alternates

* Tools/Scripts/webkitpy/style/checkers/jsonchecker.py:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/animation/TimelineRange.cpp:
* Source/WebCore/animation/ViewTimeline.cpp:
* Source/WebCore/css/CSSFontVariantAlternatesValue.cpp: Removed.
* Source/WebCore/css/CSSFontVariantAlternatesValue.h: Removed.
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/CSSValue.cpp:
* Source/WebCore/css/CSSValue.h:
* Source/WebCore/css/CSSVariableReferenceValue.h:
* Source/WebCore/css/ComputedStyleExtractor.cpp:
* Source/WebCore/css/FontVariantBuilder.cpp:
* Source/WebCore/css/FontVariantBuilder.h:
* Source/WebCore/css/parser/CSSPropertyParser.cpp:
* 
Source/WebCore/css/parser/CSSPropertyParserConsumer+CSSPrimitiveValueResolver.h:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Font.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Font.h:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+List.h:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Timeline.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Timeline.h:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Transform.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Transform.h:
* Source/WebCore/css/scripts/process-css-properties.py:
* 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/CSSPropertyParsing.h:
* 
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:
* Source/WebCore/style/StyleBuilderCustom.h:

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