[webkit-changes] [WebKit/WebKit] 856140: Make '-webkit-background-size' a legacy shorthand
Aditya Keerthi
noreply at github.com
Tue Sep 27 11:16:40 PDT 2022
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 856140e9a06f431fae7c3df24443aa963ea8445a
https://github.com/WebKit/WebKit/commit/856140e9a06f431fae7c3df24443aa963ea8445a
Author: Aditya Keerthi <akeerthi at apple.com>
Date: 2022-09-27 (Tue, 27 Sep 2022)
Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt
M LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style.html
M LayoutTests/fast/backgrounds/size/parsing-background-size-values-expected.txt
M LayoutTests/fast/backgrounds/size/parsing-inherit-expected.txt
M LayoutTests/fast/backgrounds/size/resources/parsing-background-size-values.js
M LayoutTests/fast/backgrounds/size/resources/parsing-inherit.js
M LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt
M LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-animations/KeyframeEffect-getKeyframes.tentative.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-332-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-size-001.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/parsing/background-size-computed.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/quirks/unitless-length/excluded-properties-002-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/quirks/unitless-length/excluded-properties-002.html
M LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt
M LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt
A LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt
M LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt
M LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt
M LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt
M LayoutTests/platform/ipad/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt
A LayoutTests/platform/ipad/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt
M LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt
M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt
A LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt
M LayoutTests/svg/css/getComputedStyle-basic-expected.txt
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/ComputedStyleExtractor.cpp
M Source/WebCore/css/StyleProperties.cpp
M Source/WebCore/css/parser/CSSPropertyParser.cpp
Log Message:
-----------
Make '-webkit-background-size' a legacy shorthand
https://bugs.webkit.org/show_bug.cgi?id=243562
rdar://98151497
Reviewed by Tim Nguyen.
`background-size` and `-webkit-background-size` are a pair of properties that
share a computed style. `-webkit-background-size` differs from `background-size`
in the interpretation of a single value: `-webkit-background-size: l;` is
equivalent to `background-size: l l;`, whereas `background-size: l;` is
equivalent to `background-size: l auto;`.
Property pairs that share a computed style but differ in syntax should be
implemented as legacy shorthands.
Additionally, always serialize `background-size` and `-webkit-background-size`
as two values, so that values can be roundtripped between the prefixed and
unprefixed variant.
Spec: https://www.w3.org/TR/css-cascade-5/#aliasing
* LayoutTests/TestExpectations:
Remove expectations for a forms test that was unexpectedly setting
`-webkit-background-size`, as it was not a shorthand.
* LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt:
* LayoutTests/fast/backgrounds/background-shorthand-with-backgroundSize-style.html:
* LayoutTests/fast/backgrounds/size/parsing-background-size-values-expected.txt:
* LayoutTests/fast/backgrounds/size/parsing-inherit-expected.txt:
* LayoutTests/fast/backgrounds/size/resources/parsing-background-size-values.js:
* LayoutTests/fast/backgrounds/size/resources/parsing-inherit.js:
* LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt:
* LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-animations/KeyframeEffect-getKeyframes.tentative.html:
Update test to use two-value syntax.
* LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-332-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-size-001.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/parsing/background-size-computed.html:
* LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/quirks/unitless-length/excluded-properties-002-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/quirks/unitless-length/excluded-properties-002.html:
Include an additional check for `1234px auto`, to avoid a false positive, as `background-size` is serialized to two values.
* LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
* LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
* LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt:
* LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
* LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt:
* LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
* LayoutTests/platform/ipad/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
* LayoutTests/platform/ipad/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt:
* LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt:
* LayoutTests/svg/css/getComputedStyle-basic-expected.txt:
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::fillSizeToCSSValue):
Return two values from `getComputedStyle` unless the value is "cover", "contain", or "auto".
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
* Source/WebCore/css/StyleProperties.cpp:
(WebCore::StyleProperties::getPropertyValue const):
* Source/WebCore/css/parser/CSSPropertyParser.cpp:
(WebCore::consumeBackgroundSize):
Always serialize `background-size` and `-webkit-background-size` as two values.
(WebCore::CSSPropertyParser::parseSingleValue):
(WebCore::CSSPropertyParser::parseShorthand):
Canonical link: https://commits.webkit.org/254925@main
More information about the webkit-changes
mailing list