Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3027d46f2e7cddb537f9591127d8186dbaa720f3
https://github.com/WebKit/WebKit/commit/3027d46f2e7cddb537f9591127d8186dbaa720f3
Author: Andrew Martinez <[email protected]>
Date: 2026-09-01 (Tue, 01 Sep 2026)
Changed paths:
A LayoutTests/fast/css/size-shorthand-disabled-expected.txt
A LayoutTests/fast/css/size-shorthand-disabled.html
R LayoutTests/fast/css/size-shorthand-serialization-expected.txt
R LayoutTests/fast/css/size-shorthand-serialization.html
M
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom.html
A
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/size-shorthand-serialization.tentative-expected.txt
A
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/size-shorthand-serialization.tentative.html
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/parser/CSSParser.cpp
M Source/WebCore/css/parser/CSSPropertyParser.cpp
Log Message:
-----------
[css-sizing] The size shorthand needs a feature flag
rdar://186287743
https://bugs.webkit.org/show_bug.cgi?id=323026
Reviewed by Tim Nguyen.
The size shorthand for width/height added shipped without a
feature flag. The property is still being drafted (css-sizing-4, tracked by
w3c/csswg-drafts#820), so it should be enabled in Technology Preview rather
than shipped.
Created a CSSSizeShorthandEnabled setting for preview. This gates the shorthand
while leaving
the width / height longhands and @page`page_size` descriptor the same when this
flag is disabled.
The consumePageDescriptor special case is no longer needed after this change.
Adding this flag introduced the regression that CSSParser::consumeDeclaration
runs isExposed()
check before `size` is remapped to internal `page_size` descriptor. So the
downstream remapping never occurs,
which breaks @page `size`. This logic is placed before the isExposed() guard to
prevent this effect.
Furthermore, edited nested-declarations as the coalescing behavior is no longer
present.
Meaning this test can be restored to it's original form. Lastly, the webkit
serialization test is replaced
with a tentative WPT test.
Tests: fast/css/size-shorthand-disabled.html
imported/w3c/web-platform-tests/css/css-sizing/size-shorthand-serialization.tentative.html
* LayoutTests/fast/css/size-shorthand-disabled-expected.txt: Added.
* LayoutTests/fast/css/size-shorthand-disabled.html: Added.
* LayoutTests/fast/css/size-shorthand-serialization-expected.txt: Removed.
* LayoutTests/fast/css/size-shorthand-serialization.html: Removed.
*
LayoutTests/imported/w3c/web-platform-tests/css/css-nesting/nested-declarations-cssom.html:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/size-shorthand-serialization.tentative-expected.txt:
Added.
*
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/size-shorthand-serialization.tentative.html:
Added.
* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/parser/CSSParser.cpp:
(WebCore::CSSParser::consumeDeclaration):
* Source/WebCore/css/parser/CSSPropertyParser.cpp:
(WebCore::consumePageDescriptor):
Canonical link: https://commits.webkit.org/320265@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications