Title: [135625] trunk
- Revision
- 135625
- Author
- [email protected]
- Date
- 2012-11-23 09:13:32 -0800 (Fri, 23 Nov 2012)
Log Message
Page background color bleeds through inner edge of div border with rounded edges
https://bugs.webkit.org/show_bug.cgi?id=103089
Reviewed by Stephen White.
Source/WebCore:
Test that verifies whether a RenderBoxEdge is more than 2 pixels wide
was applying the content scale factor backwards, so the
obscuresBackgroundEdge was falsely passing for downsized boxes.
Test: fast/backgrounds/gradient-background-leakage-2.html
* rendering/RenderBoxModelObject.cpp:
(WebCore::BorderEdge::obscuresBackgroundEdge):
LayoutTests:
New layout test to verify that there is no color bleeding between
a div element's border and background when there are rounded corners
an a scale that reduces a thick border down to a width of less than
two pixels.
* fast/backgrounds/gradient-background-leakage-2-expected.txt: Added.
* fast/backgrounds/gradient-background-leakage-2.html: Added.
* platform/chromium/TestExpectations:
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (135624 => 135625)
--- trunk/LayoutTests/ChangeLog 2012-11-23 17:10:03 UTC (rev 135624)
+++ trunk/LayoutTests/ChangeLog 2012-11-23 17:13:32 UTC (rev 135625)
@@ -1,3 +1,19 @@
+2012-11-23 Justin Novosad <[email protected]>
+
+ Page background color bleeds through inner edge of div border with rounded edges
+ https://bugs.webkit.org/show_bug.cgi?id=103089
+
+ Reviewed by Stephen White.
+
+ New layout test to verify that there is no color bleeding between
+ a div element's border and background when there are rounded corners
+ an a scale that reduces a thick border down to a width of less than
+ two pixels.
+
+ * fast/backgrounds/gradient-background-leakage-2-expected.txt: Added.
+ * fast/backgrounds/gradient-background-leakage-2.html: Added.
+ * platform/chromium/TestExpectations:
+
2012-11-23 Robert Kroeger <[email protected]>
Gardening: update expectations for fast/events/stopPropagation-submit.html flaky
Added: trunk/LayoutTests/fast/backgrounds/gradient-background-leakage-2-expected.txt (0 => 135625)
--- trunk/LayoutTests/fast/backgrounds/gradient-background-leakage-2-expected.txt (rev 0)
+++ trunk/LayoutTests/fast/backgrounds/gradient-background-leakage-2-expected.txt 2012-11-23 17:13:32 UTC (rev 135625)
@@ -0,0 +1,8 @@
+layer at (0,0) size 800x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x78
+ RenderBlock {HTML} at (0,0) size 800x78
+ RenderBody {BODY} at (8,10) size 784x60
+ RenderBlock {DIV} at (0,0) size 310x60 [bgcolor=#FF0000]
+layer at (18,10) size 308x58
+ RenderBlock {DIV} at (10,0) size 308x58 [border: (4px solid #008000)]
Added: trunk/LayoutTests/fast/backgrounds/gradient-background-leakage-2.html (0 => 135625)
--- trunk/LayoutTests/fast/backgrounds/gradient-background-leakage-2.html (rev 0)
+++ trunk/LayoutTests/fast/backgrounds/gradient-background-leakage-2.html 2012-11-23 17:13:32 UTC (rev 135625)
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <style type="text/css">
+ .box {
+ height: 50px;
+ width: 300px;
+ margin: 10px;
+ background-image: -webkit-linear-gradient(black, black);
+ border-radius: 25px;
+ border: 4px solid green;
+ -webkit-transform: scale(0.25);
+ }
+ </style>
+</head>
+<body>
+ <!-- You should see no red leaking through the inner edge of the border. -->
+ <div style="background-color: red; height: 60px; width: 310px">
+ <div class="box"></div>
+ </div>
+</body>
+</html>
Modified: trunk/LayoutTests/platform/chromium/TestExpectations (135624 => 135625)
--- trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-23 17:10:03 UTC (rev 135624)
+++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-11-23 17:13:32 UTC (rev 135625)
@@ -2157,6 +2157,9 @@
crbug.com/117597 svg/batik/filters/feTile.svg [ ImageOnlyFailure ]
+# Test needing new baselines
+webkit.org/b/103089 fast/backgrounds/gradient-background-leakage-2.html [ Pass Missing ImageOnlyFailure Failure ]
+
# Caused by http://trac.webkit.org/changeset/56394.
crbug.com/143475 [ Win ] http/tests/xmlhttprequest/xmlhttprequest-50ms-download-dispatch.html [ Failure Pass Timeout ]
Modified: trunk/Source/WebCore/ChangeLog (135624 => 135625)
--- trunk/Source/WebCore/ChangeLog 2012-11-23 17:10:03 UTC (rev 135624)
+++ trunk/Source/WebCore/ChangeLog 2012-11-23 17:13:32 UTC (rev 135625)
@@ -1,3 +1,19 @@
+2012-11-23 Justin Novosad <[email protected]>
+
+ Page background color bleeds through inner edge of div border with rounded edges
+ https://bugs.webkit.org/show_bug.cgi?id=103089
+
+ Reviewed by Stephen White.
+
+ Test that verifies whether a RenderBoxEdge is more than 2 pixels wide
+ was applying the content scale factor backwards, so the
+ obscuresBackgroundEdge was falsely passing for downsized boxes.
+
+ Test: fast/backgrounds/gradient-background-leakage-2.html
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::BorderEdge::obscuresBackgroundEdge):
+
2012-11-23 Huang Dongsung <[email protected]>
[TexMap] Remove dependency of TextureMapperLayer on GraphicsLayerTextureMapper.
Modified: trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp (135624 => 135625)
--- trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp 2012-11-23 17:10:03 UTC (rev 135624)
+++ trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp 2012-11-23 17:13:32 UTC (rev 135625)
@@ -1447,7 +1447,7 @@
bool presentButInvisible() const { return usedWidth() && !hasVisibleColorAndStyle(); }
bool obscuresBackgroundEdge(float scale) const
{
- if (!isPresent || isTransparent || width < (2 * scale) || color.hasAlpha() || style == BHIDDEN)
+ if (!isPresent || isTransparent || (width * scale) < 2 || color.hasAlpha() || style == BHIDDEN)
return false;
if (style == DOTTED || style == DASHED)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes