Title: [144196] trunk
- Revision
- 144196
- Author
- [email protected]
- Date
- 2013-02-27 08:48:03 -0800 (Wed, 27 Feb 2013)
Log Message
REGRESSION (r134631) of border-radius percentage with border pixel
https://bugs.webkit.org/show_bug.cgi?id=110889
Reviewed by Simon Fraser.
Source/WebCore:
Fixing background color filling to handle "non renderable" rounded
rectangles.
Test: fast/borders/border-radius-percent.html
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
LayoutTests:
Adding new pixel test to verify the correct rendering of
rounded rectangle backgrounds with inner border radii that
exceed the dimensions of the inner edge of the border.
* fast/borders/border-radius-percent-expected.txt: Added.
* fast/borders/border-radius-percent.html: Added.
* platform/chromium-linux/fast/borders/border-radius-percent-expected.png: Added.
* platform/chromium/TestExpectations:
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (144195 => 144196)
--- trunk/LayoutTests/ChangeLog 2013-02-27 16:45:06 UTC (rev 144195)
+++ trunk/LayoutTests/ChangeLog 2013-02-27 16:48:03 UTC (rev 144196)
@@ -1,3 +1,19 @@
+2013-02-27 Justin Novosad <[email protected]>
+
+ REGRESSION (r134631) of border-radius percentage with border pixel
+ https://bugs.webkit.org/show_bug.cgi?id=110889
+
+ Reviewed by Simon Fraser.
+
+ Adding new pixel test to verify the correct rendering of
+ rounded rectangle backgrounds with inner border radii that
+ exceed the dimensions of the inner edge of the border.
+
+ * fast/borders/border-radius-percent-expected.txt: Added.
+ * fast/borders/border-radius-percent.html: Added.
+ * platform/chromium-linux/fast/borders/border-radius-percent-expected.png: Added.
+ * platform/chromium/TestExpectations:
+
2013-02-27 Florin Malita <[email protected]>
[Chromium] Layout Test svg/custom/transform-with-shadow-and-gradient.svg is failing
Modified: trunk/LayoutTests/TestExpectations (144195 => 144196)
--- trunk/LayoutTests/TestExpectations 2013-02-27 16:45:06 UTC (rev 144195)
+++ trunk/LayoutTests/TestExpectations 2013-02-27 16:48:03 UTC (rev 144196)
@@ -2,5 +2,8 @@
#
# See http://trac.webkit.org/wiki/TestExpectations for more information on this file.
+# New test in need of pixel baselines
+webkit.org/b/110889 fast/borders/border-radius-percent.html [ ImageOnlyFailure Pass ]
+
# pending functional patch and per-port verification
webkit.org/b/109954 css3/line-break [ Skip ]
Added: trunk/LayoutTests/fast/borders/border-radius-percent-expected.txt (0 => 144196)
--- trunk/LayoutTests/fast/borders/border-radius-percent-expected.txt (rev 0)
+++ trunk/LayoutTests/fast/borders/border-radius-percent-expected.txt 2013-02-27 16:48:03 UTC (rev 144196)
@@ -0,0 +1,3 @@
+Corners on top should be rounded and a border of 1px black on the bottom.
+
+Corners on top should be rounded and a border of 1px black all around.
Added: trunk/LayoutTests/fast/borders/border-radius-percent.html (0 => 144196)
--- trunk/LayoutTests/fast/borders/border-radius-percent.html (rev 0)
+++ trunk/LayoutTests/fast/borders/border-radius-percent.html 2013-02-27 16:48:03 UTC (rev 144196)
@@ -0,0 +1,28 @@
+<!doctype html>
+<html>
+<head>
+<style type="text/css">
+ p{
+ text-align:center;
+ background:#ccc;
+ border-radius:50% 50% 0 0 / 100%;
+ width:300px;
+ height:150px;
+ }
+ p.all{
+ border:1px solid #000;
+ }
+ p.bottom{
+ border-bottom:1px solid #000;
+ }
+</style>
+<script>
+if (window.testRunner)
+ testRunner.dumpAsText(true);
+</script>
+</head>
+<body>
+<p class="bottom">Corners on top should be rounded and a border of 1px black on the bottom.</p>
+<p class="all">Corners on top should be rounded and a border of 1px black all around.</p>
+</body>
+</html>
Added: trunk/LayoutTests/platform/chromium-linux/fast/borders/border-radius-percent-expected.png
(Binary files differ)
Property changes on: trunk/LayoutTests/platform/chromium-linux/fast/borders/border-radius-percent-expected.png
___________________________________________________________________
Added: svn:mime-type
Modified: trunk/Source/WebCore/ChangeLog (144195 => 144196)
--- trunk/Source/WebCore/ChangeLog 2013-02-27 16:45:06 UTC (rev 144195)
+++ trunk/Source/WebCore/ChangeLog 2013-02-27 16:48:03 UTC (rev 144196)
@@ -1,3 +1,18 @@
+2013-02-27 Justin Novosad <[email protected]>
+
+ REGRESSION (r134631) of border-radius percentage with border pixel
+ https://bugs.webkit.org/show_bug.cgi?id=110889
+
+ Reviewed by Simon Fraser.
+
+ Fixing background color filling to handle "non renderable" rounded
+ rectangles.
+
+ Test: fast/borders/border-radius-percent.html
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+
2013-02-27 Florin Malita <[email protected]>
[Chromium] Layout Test svg/custom/transform-with-shadow-and-gradient.svg is failing
Modified: trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp (144195 => 144196)
--- trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp 2013-02-27 16:45:06 UTC (rev 144195)
+++ trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp 2013-02-27 16:48:03 UTC (rev 144196)
@@ -740,7 +740,14 @@
if (hasRoundedBorder && bleedAvoidance != BackgroundBleedUseTransparencyLayer) {
RoundedRect border = backgroundRoundedRectAdjustedForBleedAvoidance(context, rect, bleedAvoidance, box, boxSize, includeLeftEdge, includeRightEdge);
- context->fillRoundedRect(border, bgColor, style()->colorSpace());
+ if (border.isRenderable())
+ context->fillRoundedRect(border, bgColor, style()->colorSpace());
+ else {
+ context->save();
+ clipRoundedInnerRect(context, rect, border);
+ context->fillRect(border.rect(), bgColor, style()->colorSpace());
+ context->restore();
+ }
} else
context->fillRect(pixelSnappedIntRect(rect), bgColor, style()->colorSpace());
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes