Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c068d5d6bd1cf26b239439550969a4cbe92dbb64
https://github.com/WebKit/WebKit/commit/c068d5d6bd1cf26b239439550969a4cbe92dbb64
Author: Sam Weinig <[email protected]>
Date: 2025-12-09 (Tue, 09 Dec 2025)
Changed paths:
M Source/WebCore/CMakeLists.txt
M Source/WebCore/DerivedSources-output.xcfilelist
M Source/WebCore/DerivedSources.make
M Source/WebCore/Headers.cmake
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
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/RenderStyleProperties.h
A
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStylePropertiesInitialInlines.h
M Source/WebCore/css/values/CSSValueAggregates.h
M Source/WebCore/layout/integration/LayoutIntegrationBoxTreeUpdater.cpp
M Source/WebCore/layout/integration/LayoutIntegrationCoverage.cpp
M Source/WebCore/rendering/RenderElement.cpp
M Source/WebCore/rendering/RenderReplaced.cpp
M Source/WebCore/rendering/style/BorderData.cpp
M Source/WebCore/rendering/style/BorderData.h
M Source/WebCore/rendering/style/RenderStyle.cpp
M Source/WebCore/rendering/style/RenderStyle.h
M Source/WebCore/rendering/style/RenderStyleInlines.h
A Source/WebCore/rendering/style/RenderStylePropertiesInitialCustom.cpp
A Source/WebCore/rendering/style/RenderStylePropertiesInitialCustom.h
M Source/WebCore/rendering/style/RenderStyleSetters.h
M Source/WebCore/rendering/style/StyleBoxData.cpp
M Source/WebCore/rendering/style/StyleBoxData.h
M Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp
M Source/WebCore/rendering/style/StyleRareNonInheritedData.h
M Source/WebCore/style/StyleBuilderCustom.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/svg/StyleSVGStrokeDashoffset.h
Log Message:
-----------
[RenderStyleGen] Generate initial value functions
https://bugs.webkit.org/show_bug.cgi?id=303785
Reviewed by Darin Adler.
Adds support for generating initial value functions for RenderStyle
based on the 'initial' entries in CSSProperties.json.
This works via a very crude "parser" in process-css-properties.py
for the 'initial' string, which handles just keywords and numeric
values. Most of the properties are now generated, but a few problems
remain that require custom definitions, including:
- <integer> productions are a problem, as we don't know ahead of time if
a raw number should be foo_css_number or foo_css_integer. Supporting
foo_css_number for Style::Integer<> is one potential solution.
- A few enum properties have enum values that don't exactly match the
associated keyword.
- The BorderImage and MaskImage sub-properties are not setup for literals
at all.
- There is not yet enough information to initialize EnumSet properties.
Teaching EnumSet properties to handle CSS::Keyword::* types would
solve this.
* Source/WebCore/CMakeLists.txt:
* Source/WebCore/DerivedSources-output.xcfilelist:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/Headers.cmake:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* 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/RenderStyleProperties.h:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/RenderStylePropertiesInitialInlines.h:
Added.
* Source/WebCore/css/values/CSSValueAggregates.h:
* Source/WebCore/layout/integration/LayoutIntegrationBoxTreeUpdater.cpp:
* Source/WebCore/layout/integration/LayoutIntegrationCoverage.cpp:
* Source/WebCore/rendering/RenderReplaced.cpp:
* Source/WebCore/rendering/style/BorderData.cpp:
* Source/WebCore/rendering/style/BorderData.h:
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/RenderStyleInlines.h:
* Source/WebCore/rendering/style/RenderStylePropertiesInitialCustom.cpp: Added.
* Source/WebCore/rendering/style/RenderStylePropertiesInitialCustom.h: Added.
* Source/WebCore/rendering/style/RenderStyleSetters.h:
* Source/WebCore/rendering/style/StyleBoxData.cpp:
* Source/WebCore/rendering/style/StyleBoxData.h:
* Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp:
* Source/WebCore/rendering/style/StyleRareNonInheritedData.h:
* Source/WebCore/style/StyleBuilderCustom.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/svg/StyleSVGStrokeDashoffset.h:
Canonical link: https://commits.webkit.org/304202@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications