Patch by Alexandru Chiculita <achicu@adobe.com> on 2011-07-12
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 12 Jul 2011 22:34:04 +0000 (22:34 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 12 Jul 2011 22:34:04 +0000 (22:34 +0000)
commit3dfa183b94f92e5e0329fed10b189457fd577283
tree7de8fd54e89dc22bf2ab975fed77833166eadf7c
parent4839c8707a190456ea33f59e4297f5699d529f8e
Patch by Alexandru Chiculita <achicu@adobe.com> on 2011-07-12
Reviewed by David Hyatt.

[CSS Exclusions] Parse wrap-shape property
https://bugs.webkit.org/show_bug.cgi?id=61726

Source/WebCore:

Parsing wrap-shape: rect, circle, ellipse and polygon.
Moved WindRule from Path.h to it's own file.

Test: fast/exclusions/parsing-wrap-shape.html

* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseWrapShapeRect):
(WebCore::CSSParser::parseWrapShapeCircle):
(WebCore::CSSParser::parseWrapShapeEllipse):
(WebCore::CSSParser::parseWrapShapePolygon):
(WebCore::CSSParser::parseWrapShape):
* css/CSSParser.h:
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::init):
(WebCore::CSSPrimitiveValue::cleanup):
(WebCore::CSSPrimitiveValue::cssText):
* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::getShapeValue):
* css/CSSPropertyNames.in:
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):
* css/CSSValueKeywords.in:
* css/CSSWrapShapes.cpp: Added.
(WebCore::CSSWrapShapeRect::cssText):
(WebCore::CSSWrapShapeCircle::cssText):
(WebCore::CSSWrapShapeEllipse::cssText):
(WebCore::CSSWrapShapePolygon::cssText):
* css/CSSWrapShapes.h: Added.
(WebCore::CSSWrapShape::~CSSWrapShape):
(WebCore::CSSWrapShape::CSSWrapShape):
(WebCore::CSSWrapShapeRect::create):
(WebCore::CSSWrapShapeRect::left):
(WebCore::CSSWrapShapeRect::top):
(WebCore::CSSWrapShapeRect::width):
(WebCore::CSSWrapShapeRect::height):
(WebCore::CSSWrapShapeRect::radiusX):
(WebCore::CSSWrapShapeRect::radiusY):
(WebCore::CSSWrapShapeRect::setLeft):
(WebCore::CSSWrapShapeRect::setTop):
(WebCore::CSSWrapShapeRect::setWidth):
(WebCore::CSSWrapShapeRect::setHeight):
(WebCore::CSSWrapShapeRect::setRadiusX):
(WebCore::CSSWrapShapeRect::setRadiusY):
(WebCore::CSSWrapShapeRect::type):
(WebCore::CSSWrapShapeRect::CSSWrapShapeRect):
(WebCore::CSSWrapShapeCircle::create):
(WebCore::CSSWrapShapeCircle::left):
(WebCore::CSSWrapShapeCircle::top):
(WebCore::CSSWrapShapeCircle::radius):
(WebCore::CSSWrapShapeCircle::setLeft):
(WebCore::CSSWrapShapeCircle::setTop):
(WebCore::CSSWrapShapeCircle::setRadius):
(WebCore::CSSWrapShapeCircle::type):
(WebCore::CSSWrapShapeCircle::CSSWrapShapeCircle):
(WebCore::CSSWrapShapeEllipse::create):
(WebCore::CSSWrapShapeEllipse::left):
(WebCore::CSSWrapShapeEllipse::top):
(WebCore::CSSWrapShapeEllipse::radiusX):
(WebCore::CSSWrapShapeEllipse::radiusY):
(WebCore::CSSWrapShapeEllipse::setLeft):
(WebCore::CSSWrapShapeEllipse::setTop):
(WebCore::CSSWrapShapeEllipse::setRadiusX):
(WebCore::CSSWrapShapeEllipse::setRadiusY):
(WebCore::CSSWrapShapeEllipse::type):
(WebCore::CSSWrapShapeEllipse::CSSWrapShapeEllipse):
(WebCore::CSSWrapShapePolygon::create):
(WebCore::CSSWrapShapePolygon::appendPoint):
(WebCore::CSSWrapShapePolygon::getXAt):
(WebCore::CSSWrapShapePolygon::getYAt):
(WebCore::CSSWrapShapePolygon::setWindRule):
(WebCore::CSSWrapShapePolygon::windRule):
(WebCore::CSSWrapShapePolygon::type):
(WebCore::CSSWrapShapePolygon::CSSWrapShapePolygon):
* css/SVGCSSValueKeywords.in:
* platform/graphics/Path.h:
* platform/graphics/WindRule.h: Added.
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::diff):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::setWrapShape):
(WebCore::InheritedFlags::wrapShape):
(WebCore::InheritedFlags::initialWrapShape):
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
* rendering/style/StyleRareNonInheritedData.h:

LayoutTests:

* fast/exclusions/parsing-wrap-shape-expected.txt: Added.
* fast/exclusions/parsing-wrap-shape.html: Added.
* fast/exclusions/script-tests/parsing-wrap-shape.js: Added.
(testCSSText):
(testComputedStyle):
(testNotInherited):
(test):
(negative_test):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@90863 268f45cc-cd09-0410-ab3c-d52691b4dbfc
24 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/exclusions/parsing-wrap-shape-expected.txt [new file with mode: 0644]
LayoutTests/fast/exclusions/parsing-wrap-shape.html [new file with mode: 0644]
LayoutTests/fast/exclusions/script-tests/parsing-wrap-shape.js [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/WebCore.vcproj/WebCore.vcproj
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/css/CSSComputedStyleDeclaration.cpp
Source/WebCore/css/CSSParser.cpp
Source/WebCore/css/CSSParser.h
Source/WebCore/css/CSSPrimitiveValue.cpp
Source/WebCore/css/CSSPrimitiveValue.h
Source/WebCore/css/CSSPropertyNames.in
Source/WebCore/css/CSSStyleSelector.cpp
Source/WebCore/css/CSSValueKeywords.in
Source/WebCore/css/CSSWrapShapes.cpp [new file with mode: 0644]
Source/WebCore/css/CSSWrapShapes.h [new file with mode: 0644]
Source/WebCore/css/SVGCSSValueKeywords.in
Source/WebCore/platform/graphics/Path.h
Source/WebCore/platform/graphics/WindRule.h [new file with mode: 0644]
Source/WebCore/rendering/style/RenderStyle.cpp
Source/WebCore/rendering/style/RenderStyle.h
Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp
Source/WebCore/rendering/style/StyleRareNonInheritedData.h