Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7240a7b5486e3577f32f8fc0f8e5ce4c0d78248f
https://github.com/WebKit/WebKit/commit/7240a7b5486e3577f32f8fc0f8e5ce4c0d78248f
Author: Sam Weinig <[email protected]>
Date: 2025-05-24 (Sat, 24 May 2025)
Changed paths:
M Source/WebCore/SaferCPPExpectations/UncheckedCallArgsCheckerExpectations
M Source/WebCore/SaferCPPExpectations/UncountedCallArgsCheckerExpectations
M Source/WebCore/SaferCPPExpectations/UncountedLocalVarsCheckerExpectations
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/parser/CSSPropertyParserCustom.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/CSSStyleProperties+PropertyNames.idl
M
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleBuilderGenerated.cpp
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/css/values/CSSValueTypes.cpp
M Source/WebCore/style/StyleBuilderConverter.h
M Source/WebCore/style/StyleExtractor.cpp
M Source/WebCore/style/StyleExtractorConverter.h
M Source/WebCore/style/StyleExtractorCustom.h
M Source/WebCore/style/StyleExtractorGenerated.h
A Source/WebCore/style/StyleExtractorSerializer.h
A Source/WebCore/style/StyleOrderedNamedLinesCollector.h
Log Message:
-----------
[Computed Style Gen] Support serializers for computed values that go directly
from RenderStyle to String
https://bugs.webkit.org/show_bug.cgi?id=293301
Reviewed by Darin Adler.
Adds support for `CSSComputedStyleDeclaration::getPropertyValue` that
implements serialization of properties without a temporary CSSValue.
Instead, we now have parallel code for both conversion from a RenderStyle
value to CSSValue and serialization of a RenderStyle value to string.
The majority of property serializers are generated (the same set of
properties as have CSSValue conversion generated), with the remaining
requiring custom implementations. This introduces a bit of duplicated
logic, but we will be able to collapse it (along with the logic in
ShorthandSerializer which it also mirrors), over time.
A few of the more involved properties have their serializers temporarily
implemented by using the a CSSValue conversion with a FIXME. These will be
updated in a subsequent change.
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
- Add new files.
* Source/WebCore/style/StyleOrderedNamedLinesCollector.h: Added.
* Source/WebCore/style/StyleExtractorConverter.h:
- Moved out of StyleExtractorConverter.h, as it didn't belong there.
* Source/WebCore/style/StyleExtractorSerializer.h: Added.
- Implements analogues of Style::ExtractorConverter functions but
for direct serialization.
* Source/WebCore/style/StyleBuilderConverter.h:
- Remove dead forward declaration.
* Source/WebCore/style/StyleExtractorGenerated.h:
- Add forward declaration for new generated serializer dispatch function.
* Source/WebCore/style/StyleExtractor.cpp:
- Update to call new generated serializer dispatch function. As a debugging
aid, a macro can be enabled that validates the direct serialization
against
serialization that goes through CSSValue.
* Source/WebCore/style/StyleExtractorCustom.h:
- Add support for custom computed style direct serializers, mirroring
conversion functions.
* Source/WebCore/css/CSSProperties.json:
- Renamed a few shorthand patterns to better reflect what they were:
2Value -> CoalescingPair
4Value -> CoalescingQuad
Standard -> StandardSpaceSeparated
- Added new shorthand pattern: StandardSlashSeparated
- Resolved a few FIXMEs by adopting shorthand patterns
* Source/WebCore/css/scripts/process-css-properties.py:
- Add support for a new serializers and serializer dispatch function
in StyleExtractorGenerated.cpp
* 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/CSSStyleProperties+PropertyNames.idl:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleBuilderGenerated.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleExtractorGenerated.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleInterpolationWrapperMap.cpp:
*
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StylePropertyShorthandFunctions.cpp:
- Update shorthand pattern tests and fix typo. Regenerate results.
Canonical link: https://commits.webkit.org/295391@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