Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 39681d9b2bda037dcbaf89aa6e7c3ece7436d449
      
https://github.com/WebKit/WebKit/commit/39681d9b2bda037dcbaf89aa6e7c3ece7436d449
  Author: Antoine Quint <[email protected]>
  Date:   2023-02-14 (Tue, 14 Feb 2023)

  Changed paths:
    M 
LayoutTests/animations/font-variations/font-variation-settings-order-expected.txt
    M LayoutTests/animations/font-variations/font-variation-settings-order.html
    M LayoutTests/fast/text/variations/getComputedStyle-expected.txt
    M LayoutTests/fast/text/variations/getComputedStyle.html
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/inheritance-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-feature-settings-computed-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-feature-settings-computed.html
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-variation-settings-computed-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-variation-settings-computed.html
    M 
LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-001-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-001-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-001-expected.txt
    M Source/WebCore/animation/CSSPropertyAnimation.cpp
    M Source/WebCore/css/ComputedStyleExtractor.cpp
    M Source/WebCore/platform/graphics/FontTaggedSettings.h

  Log Message:
  -----------
  [css-fonts] font-feature-settings and font-variation-settings should sort 
their tags alphabetically
https://bugs.webkit.org/show_bug.cgi?id=252238

Reviewed by Myles C. Maxfield.

We have some WPT test failures for font-variation-settings animation due to our 
sorting duplicate
tags differently than Chrome and Firefox (alphabetically by ascending order). 
While the css-fonts
spec does not specify any order for tags in the computed style, we adopt the 
same style as Chrome
and Firefox for font-variation-settings.

Since this applies not just to animated values but this issue wasn't caught by 
parsing test, we add
some new WPT tests to 
css/css-fonts/parsing/font-variation-settings-computed.html.

Finally, since font-feature-settings is a similar type of property, and we 
implement both with the
templatized FontTaggedSettings class, we apply the same rule for this CSS 
property as well. We also
update our copy of the 
css/css-fonts/parsing/font-variation-settings-computed.html WPT since it now
passes with our new rule.

Since we implement the deduplication and sorting directly in 
FontTaggedSettings<T>::insert, there is
no need for the FontTaggedSettings<T>::deduplicated method used in 
ComputedStyleExtractor and
CSSPropertyAnimation which was recently introduced in 260212@main, so we 
largely revert that patch
as far as those two classes are concerned.

A spec issue was filed to match this behavior: 
https://github.com/w3c/csswg-drafts/issues/8450.

* 
LayoutTests/animations/font-variations/font-variation-settings-order-expected.txt:
* LayoutTests/animations/font-variations/font-variation-settings-order.html:
* LayoutTests/fast/text/variations/getComputedStyle-expected.txt:
* LayoutTests/fast/text/variations/getComputedStyle.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/inheritance-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-feature-settings-computed-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-feature-settings-computed.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-variation-settings-computed-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-variation-settings-computed.html:
* 
LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-001-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-001-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-001-expected.txt:
* Source/WebCore/animation/CSSPropertyAnimation.cpp:
(WebCore::PropertyWrapperGetter::value const):
* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
* Source/WebCore/platform/graphics/FontTaggedSettings.h:
(WebCore::FontTaggedSettings<T>::insert):
(WebCore::FontTaggedSetting<T>::operator< const): Deleted.
(WebCore::FontTaggedSettings<T>::deduplicated const): Deleted.

Canonical link: https://commits.webkit.org/260298@main


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to