-
betravis@adobe.com authored
https://bugs.webkit.org/show_bug.cgi?id=127200 Reviewed by Dirk Schulze. Source/WebCore: Convert the parsed shape-box pair to a CSSValueList rather than directly adding the box value to BasicShape. The CSSValueList preserves the shape-box ordering, and cleans up a little bit of the code shared between clip and shape values. Modifying existing parsing tests. * css/CSSComputedStyleDeclaration.cpp: (WebCore::shapePropertyValue): Factor out code common to generating shape values. (WebCore::ComputedStyleExtractor::propertyValue): Generate a CSSValueList when you have both a shape and a box. * css/CSSParser.cpp: (WebCore::CSSParser::parseBasicShapeAndOrBox): Factor out code common to clip paths and shape properties that parses the [basic-shape || box] syntax from the CSS Shapes spec. (WebCore::CSSParser::parseShapeProperty): Parse shape-box pairs as a CSSValueList. * css/DeprecatedStyleBuilder.cpp: (WebCore::ApplyPropertyShape::applyValue): Use the CSSValueList for shape-box pairs. * css/CSSValueList.h: (WebCore::CSSValueList::itemWithoutBoundsCheck): Add a const version. * page/animation/CSSPropertyAnimation.cpp: (WebCore::blendFunc): Specify a box when blending. * rendering/style/ShapeValue.h: (WebCore::ShapeValue::createShapeValue): Add a box parameter. (WebCore::ShapeValue::ShapeValue): Ditto. LayoutTests: Modify the expectations for box shape pairs, preserving the order of the arguments in non-computed values. Computed values are still a shape followed by a box. * fast/shapes/parsing/parsing-shape-inside-expected.txt: * fast/shapes/parsing/parsing-shape-outside-expected.txt: * fast/shapes/parsing/parsing-test-utils.js: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162475 268f45cc-cd09-0410-ab3c-d52691b4dbfc
230241c5