Title: [199456] releases/WebKitGTK/webkit-2.12
Revision
199456
Author
[email protected]
Date
2016-04-13 03:03:22 -0700 (Wed, 13 Apr 2016)

Log Message

Merge r198753 - Setup cloned continuation renderer properly.
https://bugs.webkit.org/show_bug.cgi?id=155640

Reviewed by Simon Fraser.

Set the "renderer has outline ancestor" flag on the cloned inline renderer when
we split the original renderer for continuation.
It ensures that when the cloned part of the continuation requests repaint, we properly
invalidate the ancestor outline (if needed).

Source/WebCore:

Test: fast/inline/outline-with-continuation-assert.html

* rendering/RenderInline.cpp:
(WebCore::RenderInline::clone):

LayoutTests:

* fast/inline/outline-with-continuation-assert-expected.txt: Added.
* fast/inline/outline-with-continuation-assert.html: Added.

Modified Paths

Added Paths

Diff

Modified: releases/WebKitGTK/webkit-2.12/LayoutTests/ChangeLog (199455 => 199456)


--- releases/WebKitGTK/webkit-2.12/LayoutTests/ChangeLog	2016-04-13 10:00:58 UTC (rev 199455)
+++ releases/WebKitGTK/webkit-2.12/LayoutTests/ChangeLog	2016-04-13 10:03:22 UTC (rev 199456)
@@ -1,3 +1,18 @@
+2016-03-28  Zalan Bujtas  <[email protected]>
+
+        Setup cloned continuation renderer properly.
+        https://bugs.webkit.org/show_bug.cgi?id=155640
+
+        Reviewed by Simon Fraser.
+
+        Set the "renderer has outline ancestor" flag on the cloned inline renderer when
+        we split the original renderer for continuation.
+        It ensures that when the cloned part of the continuation requests repaint, we properly
+        invalidate the ancestor outline (if needed).
+
+        * fast/inline/outline-with-continuation-assert-expected.txt: Added.
+        * fast/inline/outline-with-continuation-assert.html: Added.
+
 2016-03-23  Zalan Bujtas  <[email protected]>
 
         ASSERTION FAILED: y2 >= y1 in WebCore::RenderElement::drawLineForBoxSide

Added: releases/WebKitGTK/webkit-2.12/LayoutTests/fast/inline/outline-with-continuation-assert-expected.txt (0 => 199456)


--- releases/WebKitGTK/webkit-2.12/LayoutTests/fast/inline/outline-with-continuation-assert-expected.txt	                        (rev 0)
+++ releases/WebKitGTK/webkit-2.12/LayoutTests/fast/inline/outline-with-continuation-assert-expected.txt	2016-04-13 10:03:22 UTC (rev 199456)
@@ -0,0 +1,2 @@
+PASS if no assert in Debug.
+a

Added: releases/WebKitGTK/webkit-2.12/LayoutTests/fast/inline/outline-with-continuation-assert.html (0 => 199456)


--- releases/WebKitGTK/webkit-2.12/LayoutTests/fast/inline/outline-with-continuation-assert.html	                        (rev 0)
+++ releases/WebKitGTK/webkit-2.12/LayoutTests/fast/inline/outline-with-continuation-assert.html	2016-04-13 10:03:22 UTC (rev 199456)
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html>
+<head>
+<title>This tests that inline continuation inherits outline painting properly.</title>
+</head>
+<style>
+div {
+    outline: auto
+}
+</style>
+</head>
+<body>
+PASS if no assert in Debug.
+<div>
+<span><span><span id="foo"></span>a</span></span>
+</div>
+<script>
+    if (window.testRunner)
+        testRunner.dumpAsText();
+    document.execCommand('selectAll');
+    var child = document.createElement('frame');
+    parent = document.getElementById('foo');
+    parent.appendChild(child);
+</script>
+</body>
+</html>

Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog (199455 => 199456)


--- releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog	2016-04-13 10:00:58 UTC (rev 199455)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/ChangeLog	2016-04-13 10:03:22 UTC (rev 199456)
@@ -1,3 +1,20 @@
+2016-03-28  Zalan Bujtas  <[email protected]>
+
+        Setup cloned continuation renderer properly.
+        https://bugs.webkit.org/show_bug.cgi?id=155640
+
+        Reviewed by Simon Fraser.
+
+        Set the "renderer has outline ancestor" flag on the cloned inline renderer when
+        we split the original renderer for continuation.
+        It ensures that when the cloned part of the continuation requests repaint, we properly
+        invalidate the ancestor outline (if needed).
+
+        Test: fast/inline/outline-with-continuation-assert.html
+
+        * rendering/RenderInline.cpp:
+        (WebCore::RenderInline::clone):
+
 2016-03-25  Zalan Bujtas  <[email protected]>
 
         RenderImage::repaintOrMarkForLayout fails when the renderer is detached.

Modified: releases/WebKitGTK/webkit-2.12/Source/WebCore/rendering/RenderInline.cpp (199455 => 199456)


--- releases/WebKitGTK/webkit-2.12/Source/WebCore/rendering/RenderInline.cpp	2016-04-13 10:00:58 UTC (rev 199455)
+++ releases/WebKitGTK/webkit-2.12/Source/WebCore/rendering/RenderInline.cpp	2016-04-13 10:03:22 UTC (rev 199456)
@@ -416,6 +416,7 @@
     RenderPtr<RenderInline> cloneInline = createRenderer<RenderInline>(*element(), style());
     cloneInline->initializeStyle();
     cloneInline->setFlowThreadState(flowThreadState());
+    cloneInline->setHasOutlineAutoAncestor(hasOutlineAutoAncestor());
     return cloneInline;
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to