Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 80ecd47209a9238675c1f9f61abf60e51101207a
https://github.com/WebKit/WebKit/commit/80ecd47209a9238675c1f9f61abf60e51101207a
Author: Sam Weinig <[email protected]>
Date: 2025-12-30 (Tue, 30 Dec 2025)
Changed paths:
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/scripts/process-css-properties.py
M Source/WebCore/css/scripts/test/TestCSSProperties.json
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyInitialValuesGeneratedInlines.h
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/CSSStyleProperties+PropertyNames.idl
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleProperties+GettersInlines.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleProperties+SettersInlines.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleProperties.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleBuilderGenerated.cpp
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleChangedAnimatablePropertiesGenerated.cpp
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties+GettersInlines.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties+InitialInlines.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties+SettersInlines.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties.h
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleExtractorGenerated.cpp
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleInterpolationWrapperMap.cpp
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StylePropertyShorthandFunctions.cpp
M Source/WebCore/style/StyleBuilderCustom.h
M Tools/Scripts/webkitpy/style/checkers/jsonchecker.py
Log Message:
-----------
Teach process-css-properties.py to generate setters for hasExplicitlySet*
flags
https://bugs.webkit.org/show_bug.cgi?id=212506
Reviewed by Darin Adler.
Adds support to process-css-properties.py to generate code to set the
`hasExplicitlySet*` flags in `Style::BuilderGenerated`.
There are currently three different policies defined for when to set
the `hasExplicitlySet*` flags, configurable per-property via a new
entry "render-style-has-explicitly-set-policy" in CSSProperty.json.
The three policies are:
- "all-author-origin"
Invokes
`builderState.style().setHasExplicitlySet*(builderState.isAuthorOrigin())`
for `applyValue*`, `applyInitial*` and `applyInherit*`.
Used by the `color` and `padding-*` properties.
- "all-border-radius"
Invokes `builderState.style().setHasExplicitlySet*(true)` for
`applyValue*`.
Invokes `builderState.style().setHasExplicitlySet*(false)` for
`applyInitial*`.
Invokes
`builderState.style().setHasExplicitlySet*(builderState.parentStyle().hasExplicitlySet*())`
for `applyInherit*`.
Used by the `border-*-radius` properties.
- "value-only"
Invokes `builderState.style().setHasExplicitlySet*(true)` for
`applyValue*`.
Does not change the flag at all for `applyInitial*` or `applyInherit*`.
Used by the `direction`, `writing-mode`, `color-scheme`, `stroke-color`
and `stroke-width` properties.
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/scripts/process-css-properties.py:
* Source/WebCore/css/scripts/test/TestCSSProperties.json:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/CSSPropertyInitialValuesGeneratedInlines.h:
*
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/CSSStyleProperties+PropertyNames.idl:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleProperties+GettersInlines.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleProperties+SettersInlines.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStyleProperties.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleBuilderGenerated.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleChangedAnimatablePropertiesGenerated.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties+GettersInlines.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties+InitialInlines.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties+SettersInlines.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleExtractorGenerated.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleInterpolationWrapperMap.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StylePropertyShorthandFunctions.cpp:
* Source/WebCore/style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueDirection): Deleted.
(WebCore::Style::BuilderCustom::applyValueWritingMode): Deleted.
(WebCore::Style::BuilderCustom::applyValueColorScheme): Deleted.
(WebCore::Style::BuilderCustom::applyInitialBorderBottomLeftRadius): Deleted.
(WebCore::Style::BuilderCustom::applyInheritBorderBottomLeftRadius): Deleted.
(WebCore::Style::BuilderCustom::applyValueBorderBottomLeftRadius): Deleted.
(WebCore::Style::BuilderCustom::applyInitialBorderBottomRightRadius): Deleted.
(WebCore::Style::BuilderCustom::applyInheritBorderBottomRightRadius): Deleted.
(WebCore::Style::BuilderCustom::applyValueBorderBottomRightRadius): Deleted.
(WebCore::Style::BuilderCustom::applyInitialBorderTopLeftRadius): Deleted.
(WebCore::Style::BuilderCustom::applyInheritBorderTopLeftRadius): Deleted.
(WebCore::Style::BuilderCustom::applyValueBorderTopLeftRadius): Deleted.
(WebCore::Style::BuilderCustom::applyInitialBorderTopRightRadius): Deleted.
(WebCore::Style::BuilderCustom::applyInheritBorderTopRightRadius): Deleted.
(WebCore::Style::BuilderCustom::applyValueBorderTopRightRadius): Deleted.
(WebCore::Style::BuilderCustom::applyValueStrokeWidth): Deleted.
(WebCore::Style::BuilderCustom::applyValueStrokeColor): Deleted.
(WebCore::Style::BuilderCustom::applyInitialColor): Deleted.
(WebCore::Style::BuilderCustom::applyInheritColor): Deleted.
(WebCore::Style::BuilderCustom::applyInitialPaddingBottom): Deleted.
(WebCore::Style::BuilderCustom::applyInheritPaddingBottom): Deleted.
(WebCore::Style::BuilderCustom::applyValuePaddingBottom): Deleted.
(WebCore::Style::BuilderCustom::applyInitialPaddingLeft): Deleted.
(WebCore::Style::BuilderCustom::applyInheritPaddingLeft): Deleted.
(WebCore::Style::BuilderCustom::applyValuePaddingLeft): Deleted.
(WebCore::Style::BuilderCustom::applyInitialPaddingRight): Deleted.
(WebCore::Style::BuilderCustom::applyInheritPaddingRight): Deleted.
(WebCore::Style::BuilderCustom::applyValuePaddingRight): Deleted.
(WebCore::Style::BuilderCustom::applyInitialPaddingTop): Deleted.
(WebCore::Style::BuilderCustom::applyInheritPaddingTop): Deleted.
(WebCore::Style::BuilderCustom::applyValuePaddingTop): Deleted.
* Tools/Scripts/webkitpy/style/checkers/jsonchecker.py:
Canonical link: https://commits.webkit.org/305011@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications