[webkit-changes] [WebKit/WebKit] 6fed42: Implement CSS font-size-adjust property

Vitor Roriz noreply at github.com
Mon Oct 24 12:14:48 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6fed42070a60c9c4eb396c7a552df09ea6878241
      https://github.com/WebKit/WebKit/commit/6fed42070a60c9c4eb396c7a552df09ea6878241
  Author: Vitor Roriz <vitor.roriz at apple.com>
  Date:   2022-10-24 (Mon, 24 Oct 2022)

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/fast/css/getComputedStyle/computed-style-font-family-expected.txt
    M LayoutTests/imported/w3c/resources/resource-files.json
    M LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-size-adjust-interpolation-expected.txt
    A LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-005-expected.xht
    A LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-012-expected.html
    A LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-012-ref.html
    A LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-012.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-size-adjust-computed-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-size-adjust-valid-expected.txt
    A LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/resources/ahem-ex-250.otf
    A LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/resources/ahem-ex-500.otf
    M LayoutTests/imported/w3c/web-platform-tests/css/css-pseudo/first-letter-allowed-properties-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/css/css-pseudo/first-line-allowed-properties-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/css/css-pseudo/parsing/marker-supported-properties-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/css/css-pseudo/parsing/marker-supported-properties-in-animation-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/css/css-variables/variable-presentation-attribute-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/svg/styling/presentation-attributes-irrelevant-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/svg/styling/presentation-attributes-relevant-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/svg/styling/presentation-attributes-unknown-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/svg/styling/required-properties-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/web-animations/responsive/font-size-adjust-expected.txt
    M LayoutTests/platform/glib/imported/w3c/web-platform-tests/svg/import/text-fonts-204-t-manual-expected.txt
    M LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt
    A LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-003-expected.txt
    M LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt
    M LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt
    M LayoutTests/platform/gtk/tables/mozilla/bugs/bug2886-2-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
    A LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-003-expected.txt
    M LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt
    M LayoutTests/platform/ios/tables/mozilla/bugs/bug2886-2-expected.txt
    M LayoutTests/platform/ipad/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt
    M LayoutTests/platform/ipad/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt
    M 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/mac-wk1/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-expected.txt
    A LayoutTests/platform/mac/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-003-expected.txt
    M LayoutTests/platform/mac/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-005-expected.txt
    M LayoutTests/platform/mac/tables/mozilla/bugs/bug2886-2-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
    M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-pseudo-expected.txt
    M Source/WebCore/animation/CSSPropertyAnimation.cpp
    M Source/WebCore/css/CSSPrimitiveValueMappings.h
    M Source/WebCore/css/CSSProperties.json
    M Source/WebCore/css/ComputedStyleExtractor.cpp
    M Source/WebCore/css/parser/CSSPropertyParser.cpp
    M Source/WebCore/platform/graphics/FontCascadeCache.h
    M Source/WebCore/platform/graphics/FontCascadeDescription.cpp
    M Source/WebCore/platform/graphics/FontCascadeDescription.h
    M Source/WebCore/platform/graphics/FontDescription.h
    M Source/WebCore/platform/graphics/FontPlatformData.cpp
    M Source/WebCore/platform/graphics/FontPlatformData.h
    M Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp
    M Source/WebCore/platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp
    M Source/WebCore/platform/graphics/coretext/FontPlatformDataCoreText.cpp
    M Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp
    M Source/WebCore/platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp
    M Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp
    M Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp
    M Source/WebCore/platform/graphics/mac/FontCustomPlatformData.cpp
    M Source/WebCore/rendering/style/RenderStyle.cpp
    M Source/WebCore/rendering/style/RenderStyle.h
    M Source/WebCore/style/PropertyAllowlist.cpp
    M Source/WebCore/style/StyleBuilderCustom.h
    M Source/WebCore/style/StyleFontSizeFunctions.cpp
    M Source/WebCore/style/StyleFontSizeFunctions.h
    M Source/WebCore/svg/SVGElement.cpp

  Log Message:
  -----------
  Implement CSS font-size-adjust property
https://bugs.webkit.org/show_bug.cgi?id=15257
rdar://23286433

Reviewed by Myles C. Maxfield.

Implementing font-size-adjust CSS Fonts Module level 4 [1].
[1]: https://www.w3.org/TR/css-fonts-4/#font-size-adjust-prop

* LayoutTests/TestExpectations:
* LayoutTests/fast/css/getComputedStyle/computed-style-font-family-expected.txt:
* LayoutTests/imported/w3c/resources/resource-files.json:
* LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-size-adjust-interpolation-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-005-expected.xht: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-012-expected.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-012-ref.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-012.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/inheritance-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-size-adjust-computed-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-size-adjust-valid-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/resources/ahem-ex-250.otf: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/resources/ahem-ex-500.otf: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-pseudo/first-letter-allowed-properties-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-pseudo/first-line-allowed-properties-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-pseudo/parsing/marker-supported-properties-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-pseudo/parsing/marker-supported-properties-in-animation-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/css-variables/variable-presentation-attribute-expected.txt:
* 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/svg/styling/presentation-attributes-irrelevant-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/svg/styling/presentation-attributes-relevant-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/svg/styling/presentation-attributes-unknown-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/svg/styling/required-properties-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/web-animations/responsive/font-size-adjust-expected.txt:
* LayoutTests/platform/glib/imported/w3c/web-platform-tests/svg/import/text-fonts-204-t-manual-expected.txt:
* 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/css-fonts/font-size-adjust-003-expected.txt: Added.
* 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/gtk/tables/mozilla/bugs/bug2886-2-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/css-fonts/font-size-adjust-003-expected.txt: Added.
* LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
* LayoutTests/platform/ios/tables/mozilla/bugs/bug2886-2-expected.txt:
* LayoutTests/platform/ipad/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-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/mac-wk1/imported/w3c/web-platform-tests/css/css-cascade/all-prop-revert-layer-expected.txt:
* LayoutTests/platform/mac/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-003-expected.txt: Added.
* LayoutTests/platform/mac/imported/w3c/web-platform-tests/css/css-fonts/font-size-adjust-005-expected.txt:
* LayoutTests/platform/mac/tables/mozilla/bugs/bug2886-2-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:
* Source/WebCore/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
* Source/WebCore/css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator std::optional<float> const):
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::fontSizeAdjustFromStyle):
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
* Source/WebCore/css/parser/CSSPropertyParser.cpp:
(WebCore::consumeFontSizeAdjust):
(WebCore::CSSPropertyParser::parseSingleValue):
* Source/WebCore/platform/graphics/FontCascadeCache.h:
(WebCore::FontDescriptionKeyRareData::create):
(WebCore::FontDescriptionKeyRareData::fontSizeAdjust const):
(WebCore::FontDescriptionKeyRareData::operator== const):
(WebCore::FontDescriptionKeyRareData::FontDescriptionKeyRareData):
(WebCore::add):
(WebCore::FontDescriptionKey::FontDescriptionKey):
* Source/WebCore/platform/graphics/FontCascadeDescription.cpp:
* Source/WebCore/platform/graphics/FontCascadeDescription.h:
(WebCore::FontCascadeDescription::initialFontSizeAdjust):
* Source/WebCore/platform/graphics/FontDescription.h:
(WebCore::FontDescription::fontSizeAdjust const):
(WebCore::FontDescription::setFontSizeAdjust):
(WebCore::FontDescription::operator== const):
(WebCore::FontDescription::encode const):
(WebCore::FontDescription::decode):
* Source/WebCore/platform/graphics/FontPlatformData.cpp:
(WebCore::FontPlatformData::cloneWithSize):
(WebCore::FontPlatformData::updateSize):
(WebCore::FontPlatformData::updateSizeWithFontSizeAdjust):
* Source/WebCore/platform/graphics/FontPlatformData.h:
* Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::FontCache::createFontPlatformData):
* Source/WebCore/platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp:
(WebCore::FontFamilySpecificationCoreText::fontRanges const):
* Source/WebCore/platform/graphics/coretext/FontPlatformDataCoreText.cpp:
(WebCore::FontPlatformData::cloneWithSize):
(WebCore::FontPlatformData::updateSize):
* Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp:
(WebCore::FontCache::createFontPlatformData):
* Source/WebCore/platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp:
(WebCore::FontPlatformData::cloneWithSize):
(WebCore::FontPlatformData::updateSize):
* Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp:
(WebCore::Font::platformCreateScaledFont const):
* Source/WebCore/platform/graphics/mac/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* Source/WebCore/rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::setLetterSpacing):
(WebCore::RenderStyle::setFontSize):
(WebCore::RenderStyle::setFontSizeAdjust):
(WebCore::RenderStyle::setFontVariationSettings):
(WebCore::RenderStyle::setFontWeight):
(WebCore::RenderStyle::setFontStretch):
(WebCore::RenderStyle::setFontItalic):
(WebCore::RenderStyle::setFontPalette):
* Source/WebCore/rendering/style/RenderStyle.h:
(WebCore::RenderStyle::fontSizeAdjust const):
* Source/WebCore/style/PropertyAllowlist.cpp:
(WebCore::Style::isValidMarkerStyleProperty):
* Source/WebCore/style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueFontSizeAdjust):
* Source/WebCore/style/StyleFontSizeFunctions.cpp:
(WebCore::Style::adjustedFontSize):
* Source/WebCore/style/StyleFontSizeFunctions.h:
* Source/WebCore/svg/SVGElement.cpp:
(WebCore::createAttributeNameToCSSPropertyIDMap):

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




More information about the webkit-changes mailing list