Title: [172973] trunk
Revision
172973
Author
[email protected]
Date
2014-08-26 13:12:57 -0700 (Tue, 26 Aug 2014)

Log Message

[CSS Shapes] Positioned polygon reftests failing
https://bugs.webkit.org/show_bug.cgi?id=135925

Reviewed by David Hyatt.

Source/WebCore:

We didn't respect the shape-margin before a positioned polygon, since we checked
the shape-margin for only 1 vertex for a polygon edge. This patch fixes the behavior,
removes the tests from the skipped list and updates 1 test, which was incorrect.

Updated existing test and removed tests from skipped list.

* rendering/shapes/PolygonShape.cpp:
(WebCore::clippedCircleXRange):
(WebCore::PolygonShape::getExcludedInterval):

LayoutTests:

* TestExpectations: Remove passing tests.
* css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012.html: Fix test behavior.

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (172972 => 172973)


--- trunk/LayoutTests/ChangeLog	2014-08-26 20:11:59 UTC (rev 172972)
+++ trunk/LayoutTests/ChangeLog	2014-08-26 20:12:57 UTC (rev 172973)
@@ -1,3 +1,13 @@
+2014-08-26  Zoltan Horvath  <[email protected]>
+
+        [CSS Shapes] Positioned polygon reftests failing
+        https://bugs.webkit.org/show_bug.cgi?id=135925
+
+        Reviewed by David Hyatt.
+
+        * TestExpectations: Remove passing tests.
+        * css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012.html: Fix test behavior.
+
 2014-08-26  Commit Queue  <[email protected]>
 
         Unreviewed, rolling out r172940.

Modified: trunk/LayoutTests/TestExpectations (172972 => 172973)


--- trunk/LayoutTests/TestExpectations	2014-08-26 20:11:59 UTC (rev 172972)
+++ trunk/LayoutTests/TestExpectations	2014-08-26 20:12:57 UTC (rev 172973)
@@ -149,11 +149,6 @@
 webkit.org/b/135923 css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-003.html [ ImageOnlyFailure ]
 webkit.org/b/135923 css3/shapes/shape-outside/shape-image/gradients/shape-outside-radial-gradient-004.html [ ImageOnlyFailure ]
 
-webkit.org/b/135925 css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012.html [ ImageOnlyFailure ]
-webkit.org/b/135925 css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-013.html [ ImageOnlyFailure ]
-webkit.org/b/135925 css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-014.html [ ImageOnlyFailure ]
-webkit.org/b/135925 css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-015.html [ ImageOnlyFailure ]
-
 webkit.org/b/135927 css3/shapes/spec-examples/shape-outside-010.html [ ImageOnlyFailure ]
 webkit.org/b/135927 css3/shapes/spec-examples/shape-outside-011.html [ ImageOnlyFailure ]
 webkit.org/b/135927 css3/shapes/spec-examples/shape-outside-012.html [ ImageOnlyFailure ]

Modified: trunk/LayoutTests/css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012.html (172972 => 172973)


--- trunk/LayoutTests/css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012.html	2014-08-26 20:11:59 UTC (rev 172972)
+++ trunk/LayoutTests/css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012.html	2014-08-26 20:12:57 UTC (rev 172973)
@@ -51,8 +51,8 @@
         }
         #ref-2 {
             top: 150px;
-            left: 170px;
-            width: 80px;
+            left: 150px;
+            width: 100px;
             height: 20px;
         }
         #ref-3 {
@@ -66,10 +66,10 @@
     <p>The test passes if there is green square and no red.</p>
     <div id="container">
         <div id="test-shape"></div>
-        XXXXXXXXXXXX XXX XXX XXX XXX XXXXXXXX XXXXXX XXXXXX XXXXXX XXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXXXXX
+        XXXXXXXXXXXX XXX XXX XXX XXX XXXXxXX XXXXXX XXXXXX XXXXXX XXXXXXXXXXXX XXXXXXXXXXXX XXXXXXXXXXXX
     </div>
     <div id="ref-1" class="ref-shape"></div>
     <div id="ref-2" class="ref-shape"></div>
     <div id="ref-3" class="ref-shape"></div>
     </body>
-</html>
\ No newline at end of file
+</html>

Modified: trunk/Source/WebCore/ChangeLog (172972 => 172973)


--- trunk/Source/WebCore/ChangeLog	2014-08-26 20:11:59 UTC (rev 172972)
+++ trunk/Source/WebCore/ChangeLog	2014-08-26 20:12:57 UTC (rev 172973)
@@ -1,3 +1,20 @@
+2014-08-26  Zoltan Horvath  <[email protected]>
+
+        [CSS Shapes] Positioned polygon reftests failing
+        https://bugs.webkit.org/show_bug.cgi?id=135925
+
+        Reviewed by David Hyatt.
+
+        We didn't respect the shape-margin before a positioned polygon, since we checked
+        the shape-margin for only 1 vertex for a polygon edge. This patch fixes the behavior,
+        removes the tests from the skipped list and updates 1 test, which was incorrect.
+
+        Updated existing test and removed tests from skipped list.
+
+        * rendering/shapes/PolygonShape.cpp:
+        (WebCore::clippedCircleXRange):
+        (WebCore::PolygonShape::getExcludedInterval):
+
 2014-08-26  Zalan Bujtas  <[email protected]>
 
         Subpixel layout: Remove float to LayoutUnit ceil/round function wrappers.

Modified: trunk/Source/WebCore/rendering/shapes/PolygonShape.cpp (172972 => 172973)


--- trunk/Source/WebCore/rendering/shapes/PolygonShape.cpp	2014-08-26 20:11:59 UTC (rev 172972)
+++ trunk/Source/WebCore/rendering/shapes/PolygonShape.cpp	2014-08-26 20:12:57 UTC (rev 172973)
@@ -97,7 +97,7 @@
 
 static FloatShapeInterval clippedCircleXRange(const FloatPoint& center, float radius, float y1, float y2)
 {
-    if (y1 > center.y() + radius || y2 < center.y() - radius)
+    if (y1 >= center.y() + radius || y2 <= center.y() - radius)
         return FloatShapeInterval();
 
     if (center.y() >= y1 && center.y() <= y2)
@@ -140,6 +140,7 @@
             excludedInterval.unite(OffsetPolygonEdge(edge, outwardEdgeNormal(edge) * shapeMargin()).clippedEdgeXRange(y1, y2));
             excludedInterval.unite(OffsetPolygonEdge(edge, inwardEdgeNormal(edge) * shapeMargin()).clippedEdgeXRange(y1, y2));
             excludedInterval.unite(clippedCircleXRange(edge.vertex1(), shapeMargin(), y1, y2));
+            excludedInterval.unite(clippedCircleXRange(edge.vertex2(), shapeMargin(), y1, y2));
         }
     }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to