Skip to content
  • commit-queue@webkit.org's avatar
    Parsing support for -webkit-text-decoration-skip: ink · 0171920a
    commit-queue@webkit.org authored
    https://bugs.webkit.org/show_bug.cgi?id=123358
    
    Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-10-28
    Reviewed by Dean Jackson.
    
    Source/JavaScriptCore:
    
    Adding ENABLE(CSS3_TEXT_DECORATION)
    
    * Configurations/FeatureDefines.xcconfig:
    
    Source/WebCore:
    
    Adds initial parsing support for parsing -webkit-text-decoration-skip with
    values of "none" and "ink". This work is behind the new
    ENABLE(CSS3_TEXT_DECORATION) compile-time flag.
    
    Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-roundtrip.html
    
    * Configurations/FeatureDefines.xcconfig: Adding ENABLE(CSS3_TEXT_DECORATION)
    * css/CSSComputedStyleDeclaration.cpp: Mapping internal representation of text-decoration-skip
    to a CSSValue
    (WebCore::renderTextDecorationSkipFlagsToCSSValue):
    (WebCore::ComputedStyleExtractor::propertyValue):
    * css/CSSParser.cpp: Actually parsing tokens
    (WebCore::CSSParser::parseValue):
    (WebCore::CSSParser::parseTextDecorationSkip):
    * css/CSSParser.h:
    * css/CSSPropertyNames.in: adding -webkit-text-decoration-skip
    * css/CSSValueKeywords.in: adding ink
    * css/DeprecatedStyleBuilder.cpp: Mapping from CSSValue to internal representation
    (WebCore::ApplyPropertyTextDecorationSkip::valueToDecorationSkip):
    (WebCore::ApplyPropertyTextDecorationSkip::applyValue):
    (WebCore::ApplyPropertyTextDecorationSkip::createHandler):
    (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
    * css/StyleResolver.cpp: decoration-skip uses DeprecatedStyleBuilder
    (WebCore::StyleResolver::applyProperty):
    * rendering/style/RenderStyle.h: Adding functions for modifying and accessing decoration-skip properties
    * rendering/style/RenderStyleConstants.h: Definition of internal representation
    * rendering/style/StyleRareInheritedData.cpp: Setting up constructors and comparators
    (WebCore::StyleRareInheritedData::StyleRareInheritedData):
    (WebCore::StyleRareInheritedData::operator==):
    * rendering/style/StyleRareInheritedData.h: Holds actual value of internal representation
    
    Source/WebKit/mac:
    
    Adding ENABLE(CSS3_TEXT_DECORATION)
    
    * Configurations/FeatureDefines.xcconfig:
    
    Source/WebKit2:
    
    Adding ENABLE(CSS3_TEXT_DECORATION)
    
    * Configurations/FeatureDefines.xcconfig:
    
    Tools:
    
    Adding ENABLE(CSS3_TEXT_DECORATION)
    
    * Scripts/webkitperl/FeatureList.pm:
    
    LayoutTests:
    
    Adds a test which makes sure that we can parse the
    -webkit-text-decoration-skip CSS property, as well
    as values for "ink" and "none". We can use the CSSOM
    to test the roundtrip of these values
    
    * fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-roundtrip.html: Added.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@158127 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    0171920a