Title: [174976] releases/WebKitGTK/webkit-2.6
- Revision
- 174976
- Author
- [email protected]
- Date
- 2014-10-21 09:41:21 -0700 (Tue, 21 Oct 2014)
Log Message
Merge r174716 - REGRESSION (Safari 7.1/8.0): Border-radius and overflow hidden renders incorrectly.
https://bugs.webkit.org/show_bug.cgi?id=137205
Reviewed by Simon Fraser.
Child layer should not reset radius clipping behaviour.
Source/WebCore:
Test: fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
LayoutTests:
* fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping-expected.html: Added.
* fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html: Added.
Modified Paths
Added Paths
Diff
Modified: releases/WebKitGTK/webkit-2.6/LayoutTests/ChangeLog (174975 => 174976)
--- releases/WebKitGTK/webkit-2.6/LayoutTests/ChangeLog 2014-10-21 16:38:35 UTC (rev 174975)
+++ releases/WebKitGTK/webkit-2.6/LayoutTests/ChangeLog 2014-10-21 16:41:21 UTC (rev 174976)
@@ -1,3 +1,15 @@
+2014-10-14 Zalan Bujtas <[email protected]>
+
+ REGRESSION (Safari 7.1/8.0): Border-radius and overflow hidden renders incorrectly.
+ https://bugs.webkit.org/show_bug.cgi?id=137205
+
+ Reviewed by Simon Fraser.
+
+ Child layer should not reset radius clipping behaviour.
+
+ * fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping-expected.html: Added.
+ * fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html: Added.
+
2014-10-14 Dan Bernstein <[email protected]>
URLs that start with http:/// and https:/// lose two slashes when parsed, causing assertion failure and inconsistent behavior
Added: releases/WebKitGTK/webkit-2.6/LayoutTests/fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping-expected.html (0 => 174976)
--- releases/WebKitGTK/webkit-2.6/LayoutTests/fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping-expected.html (rev 0)
+++ releases/WebKitGTK/webkit-2.6/LayoutTests/fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping-expected.html 2014-10-21 16:41:21 UTC (rev 174976)
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<html>
+<head>
+<title>This tests that parent clipping is applied properly when border-radius is present.</title>
+<style>
+ div {
+ overflow: hidden;
+ border: 1px solid blue;
+ border-radius: 50px;
+ height: 50px;
+ }
+
+</style>
+</head>
+<body>
+ <div>Positioned text should be clipped.</div>
+</body>
+</html>
Added: releases/WebKitGTK/webkit-2.6/LayoutTests/fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html (0 => 174976)
--- releases/WebKitGTK/webkit-2.6/LayoutTests/fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html (rev 0)
+++ releases/WebKitGTK/webkit-2.6/LayoutTests/fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html 2014-10-21 16:41:21 UTC (rev 174976)
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<html>
+<head>
+<title>This tests that parent clipping is applied properly when border-radius is present.</title>
+<style>
+ .container {
+ overflow: hidden;
+ border: 1px solid blue;
+ border-radius: 50px;
+ height: 50px;
+ }
+
+ .box {
+ overflow:hidden;
+ position: relative;
+ top: 0px;
+ left: 0px;
+ }
+
+</style>
+</head>
+<body>
+ <div class=container>
+ <div class=box>Positioned text should be clipped.</div>
+ </div>
+</body>
+</html>
Modified: releases/WebKitGTK/webkit-2.6/Source/WebCore/ChangeLog (174975 => 174976)
--- releases/WebKitGTK/webkit-2.6/Source/WebCore/ChangeLog 2014-10-21 16:38:35 UTC (rev 174975)
+++ releases/WebKitGTK/webkit-2.6/Source/WebCore/ChangeLog 2014-10-21 16:41:21 UTC (rev 174976)
@@ -1,3 +1,17 @@
+2014-10-14 Zalan Bujtas <[email protected]>
+
+ REGRESSION (Safari 7.1/8.0): Border-radius and overflow hidden renders incorrectly.
+ https://bugs.webkit.org/show_bug.cgi?id=137205
+
+ Reviewed by Simon Fraser.
+
+ Child layer should not reset radius clipping behaviour.
+
+ Test: fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::calculateClipRects):
+
2014-10-14 Dan Bernstein <[email protected]>
URLs that start with http:/// and https:/// lose two slashes when parsed, causing assertion failure and inconsistent behavior
Modified: releases/WebKitGTK/webkit-2.6/Source/WebCore/rendering/RenderLayer.cpp (174975 => 174976)
--- releases/WebKitGTK/webkit-2.6/Source/WebCore/rendering/RenderLayer.cpp 2014-10-21 16:38:35 UTC (rev 174975)
+++ releases/WebKitGTK/webkit-2.6/Source/WebCore/rendering/RenderLayer.cpp 2014-10-21 16:41:21 UTC (rev 174976)
@@ -5450,7 +5450,8 @@
// This layer establishes a clip of some kind.
if (renderer().hasOverflowClip() && (this != clipRectsContext.rootLayer || clipRectsContext.respectOverflowClip == RespectOverflowClip)) {
foregroundRect.intersect(toRenderBox(renderer()).overflowClipRect(toLayoutPoint(offsetFromRootLocal), namedFlowFragment, clipRectsContext.overlayScrollbarSizeRelevancy));
- foregroundRect.setHasRadius(renderer().style().hasBorderRadius());
+ if (renderer().style().hasBorderRadius())
+ foregroundRect.setHasRadius(true);
}
if (renderer().hasClip()) {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes