<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[192215] releases/WebKitGTK/webkit-2.10</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/192215">192215</a></dd>
<dt>Author</dt> <dd>carlosgc@webkit.org</dd>
<dt>Date</dt> <dd>2015-11-10 01:50:20 -0800 (Tue, 10 Nov 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Merge <a href="http://trac.webkit.org/projects/webkit/changeset/191610">r191610</a> - Floating box is misplaced after content change.
https://bugs.webkit.org/show_bug.cgi?id=150271

Reviewed by David Hyatt.

Collapse anonymous block when as the result of a sibling removal only floating siblings are left.

Source/WebCore:

Test: fast/block/collapse-anon-block-with-float-siblings-only.html

* rendering/RenderBlock.cpp:
(WebCore::canCollapseAnonymousBlock):
(WebCore::canMergeContiguousAnonymousBlocks):
(WebCore::RenderBlock::collapseAnonymousBoxChild):
(WebCore::RenderBlock::removeChild):
(WebCore::canMergeAnonymousBlock): Deleted.
* rendering/RenderBlock.h:
* rendering/RenderElement.cpp:
(WebCore::RenderElement::removeAnonymousWrappersForInlinesIfNecessary):

LayoutTests:

* fast/block/collapse-anon-block-with-float-siblings-only-expected.html: Added.
* fast/block/collapse-anon-block-with-float-siblings-only.html: Added.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#releasesWebKitGTKwebkit210LayoutTestsChangeLog">releases/WebKitGTK/webkit-2.10/LayoutTests/ChangeLog</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoreChangeLog">releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCorerenderingRenderBlockcpp">releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlock.cpp</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCorerenderingRenderBlockh">releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlock.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCorerenderingRenderBlockFlowh">releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlockFlow.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCorerenderingRenderDeprecatedFlexibleBoxh">releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCorerenderingRenderElementcpp">releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderElement.cpp</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCorerenderingRenderFlexibleBoxh">releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderFlexibleBox.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCorerenderingRenderGridh">releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderGrid.h</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#releasesWebKitGTKwebkit210LayoutTestsfastblockcollapseanonblockwithfloatsiblingsonlyexpectedhtml">releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/collapse-anon-block-with-float-siblings-only-expected.html</a></li>
<li><a href="#releasesWebKitGTKwebkit210LayoutTestsfastblockcollapseanonblockwithfloatsiblingsonlyhtml">releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/collapse-anon-block-with-float-siblings-only.html</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="releasesWebKitGTKwebkit210LayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/LayoutTests/ChangeLog (192214 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/LayoutTests/ChangeLog        2015-11-10 08:59:44 UTC (rev 192214)
+++ releases/WebKitGTK/webkit-2.10/LayoutTests/ChangeLog        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -1,3 +1,15 @@
</span><ins>+2015-10-26  Zalan Bujtas  &lt;zalan@apple.com&gt;
+
+        Floating box is misplaced after content change.
+        https://bugs.webkit.org/show_bug.cgi?id=150271
+
+        Reviewed by David Hyatt.
+
+        Collapse anonymous block when as the result of a sibling removal only floating siblings are left.
+
+        * fast/block/collapse-anon-block-with-float-siblings-only-expected.html: Added.
+        * fast/block/collapse-anon-block-with-float-siblings-only.html: Added.
+
</ins><span class="cx"> 2015-10-26  Jiewen Tan  &lt;jiewen_tan@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Null dereference loading Blink layout test editing/execCommand/crash-replacing-list-by-list.html
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210LayoutTestsfastblockcollapseanonblockwithfloatsiblingsonlyexpectedhtml"></a>
<div class="addfile"><h4>Added: releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/collapse-anon-block-with-float-siblings-only-expected.html (0 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/collapse-anon-block-with-float-siblings-only-expected.html                                (rev 0)
+++ releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/collapse-anon-block-with-float-siblings-only-expected.html        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;head&gt;
+&lt;title&gt;This tests that floating box is properly positioned after removing sibling block content.&lt;/title&gt;
+&lt;/head&gt;
+&lt;body&gt;
+should not wrap
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="releasesWebKitGTKwebkit210LayoutTestsfastblockcollapseanonblockwithfloatsiblingsonlyhtml"></a>
<div class="addfile"><h4>Added: releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/collapse-anon-block-with-float-siblings-only.html (0 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/collapse-anon-block-with-float-siblings-only.html                                (rev 0)
+++ releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/collapse-anon-block-with-float-siblings-only.html        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;head&gt;
+&lt;title&gt;This tests that floating box is properly positioned after removing sibling block content.&lt;/title&gt;
+&lt;style&gt;
+        .floating {
+            float: left;
+        }
+&lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;span&gt;wrap&lt;/span&gt;&lt;div id=removeThis&gt;&lt;/div&gt;&lt;div class=&quot;floating&quot;&gt;should not&amp;nbsp&lt;/div&gt;
+&lt;script&gt;
+        if (window.testRunner)
+                  testRunner.waitUntilDone();
+        setTimeout(function() { 
+                var ele = document.getElementById(&quot;removeThis&quot;); 
+                ele.parentNode.removeChild(ele);
+                if (window.testRunner)
+                        testRunner.notifyDone(); 
+        }, 0);
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog (192214 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog        2015-11-10 08:59:44 UTC (rev 192214)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -1,3 +1,24 @@
</span><ins>+2015-10-26  Zalan Bujtas  &lt;zalan@apple.com&gt;
+
+        Floating box is misplaced after content change.
+        https://bugs.webkit.org/show_bug.cgi?id=150271
+
+        Reviewed by David Hyatt.
+
+        Collapse anonymous block when as the result of a sibling removal only floating siblings are left.
+
+        Test: fast/block/collapse-anon-block-with-float-siblings-only.html
+
+        * rendering/RenderBlock.cpp:
+        (WebCore::canCollapseAnonymousBlock):
+        (WebCore::canMergeContiguousAnonymousBlocks):
+        (WebCore::RenderBlock::collapseAnonymousBoxChild):
+        (WebCore::RenderBlock::removeChild):
+        (WebCore::canMergeAnonymousBlock): Deleted.
+        * rendering/RenderBlock.h:
+        * rendering/RenderElement.cpp:
+        (WebCore::RenderElement::removeAnonymousWrappersForInlinesIfNecessary):
+
</ins><span class="cx"> 2015-10-26  Jiewen Tan  &lt;jiewen_tan@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Null dereference loading Blink layout test editing/execCommand/crash-replacing-list-by-list.html
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCorerenderingRenderBlockcpp"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlock.cpp (192214 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlock.cpp        2015-11-10 08:59:44 UTC (rev 192214)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlock.cpp        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -637,7 +637,7 @@
</span><span class="cx">     child-&gt;destroy();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-static bool canMergeAnonymousBlock(RenderBlock&amp; anonymousBlock)
</del><ins>+static bool canDropAnonymousBlock(const RenderBlock&amp; anonymousBlock)
</ins><span class="cx"> {
</span><span class="cx">     if (anonymousBlock.beingDestroyed() || anonymousBlock.continuation())
</span><span class="cx">         return false;
</span><span class="lines">@@ -655,33 +655,32 @@
</span><span class="cx">         if (!previous-&gt;isAnonymousBlock())
</span><span class="cx">             return false;
</span><span class="cx">         RenderBlock&amp; previousAnonymousBlock = downcast&lt;RenderBlock&gt;(*previous);
</span><del>-        if (!canMergeAnonymousBlock(previousAnonymousBlock))
</del><ins>+        if (!canDropAnonymousBlock(previousAnonymousBlock))
</ins><span class="cx">             return false;
</span><span class="cx">     }
</span><span class="cx">     if (next) {
</span><span class="cx">         if (!next-&gt;isAnonymousBlock())
</span><span class="cx">             return false;
</span><span class="cx">         RenderBlock&amp; nextAnonymousBlock = downcast&lt;RenderBlock&gt;(*next);
</span><del>-        if (!canMergeAnonymousBlock(nextAnonymousBlock))
</del><ins>+        if (!canDropAnonymousBlock(nextAnonymousBlock))
</ins><span class="cx">             return false;
</span><span class="cx">     }
</span><span class="cx">     return true;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void RenderBlock::collapseAnonymousBoxChild(RenderBlock&amp; parent, RenderBlock* child)
</del><ins>+void RenderBlock::dropAnonymousBoxChild(RenderBlock&amp; parent, RenderBlock&amp; child)
</ins><span class="cx"> {
</span><span class="cx">     parent.setNeedsLayoutAndPrefWidthsRecalc();
</span><del>-    parent.setChildrenInline(child-&gt;childrenInline());
-    RenderObject* nextSibling = child-&gt;nextSibling();
</del><ins>+    parent.setChildrenInline(child.childrenInline());
+    if (auto* childFlowThread = child.flowThreadContainingBlock())
+        childFlowThread-&gt;removeFlowChildInfo(&amp;child);
</ins><span class="cx"> 
</span><del>-    if (auto* childFlowThread = child-&gt;flowThreadContainingBlock())
-        childFlowThread-&gt;removeFlowChildInfo(child);
-
-    parent.removeChildInternal(*child, child-&gt;hasLayer() ? NotifyChildren : DontNotifyChildren);
-    child-&gt;moveAllChildrenTo(&amp;parent, nextSibling, child-&gt;hasLayer());
</del><ins>+    RenderObject* nextSibling = child.nextSibling();
+    parent.removeChildInternal(child, child.hasLayer() ? NotifyChildren : DontNotifyChildren);
+    child.moveAllChildrenTo(&amp;parent, nextSibling, child.hasLayer());
</ins><span class="cx">     // Delete the now-empty block's lines and nuke it.
</span><del>-    child-&gt;deleteLines();
-    child-&gt;destroy();
</del><ins>+    child.deleteLines();
+    child.destroy();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void RenderBlock::removeChild(RenderObject&amp; oldChild)
</span><span class="lines">@@ -746,19 +745,26 @@
</span><span class="cx">     RenderBox::removeChild(oldChild);
</span><span class="cx"> 
</span><span class="cx">     RenderObject* child = prev ? prev : next;
</span><del>-    if (canMergeAnonymousBlocks &amp;&amp; child &amp;&amp; !child-&gt;previousSibling() &amp;&amp; !child-&gt;nextSibling() &amp;&amp; canCollapseAnonymousBlockChild()) {
</del><ins>+    if (canMergeAnonymousBlocks &amp;&amp; child &amp;&amp; !child-&gt;previousSibling() &amp;&amp; !child-&gt;nextSibling() &amp;&amp; canDropAnonymousBlockChild()) {
</ins><span class="cx">         // The removal has knocked us down to containing only a single anonymous
</span><span class="cx">         // box. We can pull the content right back up into our box.
</span><del>-        collapseAnonymousBoxChild(*this, downcast&lt;RenderBlock&gt;(child));
-    } else if (((prev &amp;&amp; prev-&gt;isAnonymousBlock()) || (next &amp;&amp; next-&gt;isAnonymousBlock())) &amp;&amp; canCollapseAnonymousBlockChild()) {
</del><ins>+        dropAnonymousBoxChild(*this, downcast&lt;RenderBlock&gt;(*child));
+    } else if (((prev &amp;&amp; prev-&gt;isAnonymousBlock()) || (next &amp;&amp; next-&gt;isAnonymousBlock())) &amp;&amp; canDropAnonymousBlockChild()) {
</ins><span class="cx">         // It's possible that the removal has knocked us down to a single anonymous
</span><del>-        // block with pseudo-style element siblings (e.g. first-letter). If these
-        // are floating, then we need to pull the content up also.
-        RenderBlock* anonBlock = downcast&lt;RenderBlock&gt;((prev &amp;&amp; prev-&gt;isAnonymousBlock()) ? prev : next);
-        if ((anonBlock-&gt;previousSibling() || anonBlock-&gt;nextSibling())
-            &amp;&amp; (!anonBlock-&gt;previousSibling() || (anonBlock-&gt;previousSibling()-&gt;style().styleType() != NOPSEUDO &amp;&amp; anonBlock-&gt;previousSibling()-&gt;isFloating() &amp;&amp; !anonBlock-&gt;previousSibling()-&gt;previousSibling()))
-            &amp;&amp; (!anonBlock-&gt;nextSibling() || (anonBlock-&gt;nextSibling()-&gt;style().styleType() != NOPSEUDO &amp;&amp; anonBlock-&gt;nextSibling()-&gt;isFloating() &amp;&amp; !anonBlock-&gt;nextSibling()-&gt;nextSibling()))) {
-            collapseAnonymousBoxChild(*this, anonBlock);
</del><ins>+        // block with floating siblings.
+        RenderBlock&amp; anonBlock = downcast&lt;RenderBlock&gt;((prev &amp;&amp; prev-&gt;isAnonymousBlock()) ? *prev : *next);
+        if (canDropAnonymousBlock(anonBlock)) {
+            bool dropAnonymousBlock = true;
+            for (auto&amp; sibling : childrenOfType&lt;RenderObject&gt;(*this)) {
+                if (&amp;sibling == &amp;anonBlock)
+                    continue;
+                if (!sibling.isFloating()) {
+                    dropAnonymousBlock = false;
+                    break;
+                }
+            }
+            if (dropAnonymousBlock)
+                dropAnonymousBoxChild(*this, anonBlock);
</ins><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> 
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCorerenderingRenderBlockh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlock.h (192214 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlock.h        2015-11-10 08:59:44 UTC (rev 192214)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlock.h        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -195,7 +195,7 @@
</span><span class="cx"> 
</span><span class="cx">     static RenderBlock* createAnonymousWithParentRendererAndDisplay(const RenderObject*, EDisplay = BLOCK);
</span><span class="cx">     RenderBlock* createAnonymousBlock(EDisplay display = BLOCK) const { return createAnonymousWithParentRendererAndDisplay(this, display); }
</span><del>-    static void collapseAnonymousBoxChild(RenderBlock&amp; parent, RenderBlock* child);
</del><ins>+    static void dropAnonymousBoxChild(RenderBlock&amp; parent, RenderBlock&amp; child);
</ins><span class="cx"> 
</span><span class="cx">     virtual RenderBox* createAnonymousBoxWithSameTypeAs(const RenderObject* parent) const override;
</span><span class="cx"> 
</span><span class="lines">@@ -300,7 +300,7 @@
</span><span class="cx">     virtual void updateHitTestResult(HitTestResult&amp;, const LayoutPoint&amp;) override;
</span><span class="cx"> 
</span><span class="cx">     virtual bool canHaveChildren() const override { return true; }
</span><del>-    virtual bool canCollapseAnonymousBlockChild() const { return true; }
</del><ins>+    virtual bool canDropAnonymousBlockChild() const { return true; }
</ins><span class="cx"> 
</span><span class="cx">     RenderFlowThread* cachedFlowThreadContainingBlock() const;
</span><span class="cx">     void setCachedFlowThreadContainingBlockNeedsUpdate();
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCorerenderingRenderBlockFlowh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlockFlow.h (192214 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlockFlow.h        2015-11-10 08:59:44 UTC (rev 192214)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderBlockFlow.h        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -275,7 +275,7 @@
</span><span class="cx">     }
</span><span class="cx">     void layoutLineGridBox();
</span><span class="cx"> 
</span><del>-    virtual bool canCollapseAnonymousBlockChild() const override { return !renderNamedFlowFragment(); }
</del><ins>+    virtual bool canDropAnonymousBlockChild() const override { return !renderNamedFlowFragment(); }
</ins><span class="cx">     RenderNamedFlowFragment* renderNamedFlowFragment() const { return hasRareBlockFlowData() ? rareBlockFlowData()-&gt;m_renderNamedFlowFragment : nullptr; }
</span><span class="cx">     void setRenderNamedFlowFragment(RenderNamedFlowFragment*);
</span><span class="cx"> 
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCorerenderingRenderDeprecatedFlexibleBoxh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.h (192214 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.h        2015-11-10 08:59:44 UTC (rev 192214)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.h        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -47,7 +47,7 @@
</span><span class="cx">     bool isStretchingChildren() const { return m_stretchingChildren; }
</span><span class="cx"> 
</span><span class="cx">     virtual bool avoidsFloats() const override { return true; }
</span><del>-    virtual bool canCollapseAnonymousBlockChild() const override { return false; }
</del><ins>+    virtual bool canDropAnonymousBlockChild() const override { return false; }
</ins><span class="cx"> 
</span><span class="cx">     void placeChild(RenderBox* child, const LayoutPoint&amp; location, LayoutSize* childLayoutDelta = nullptr);
</span><span class="cx"> 
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCorerenderingRenderElementcpp"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderElement.cpp (192214 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderElement.cpp        2015-11-10 08:59:44 UTC (rev 192214)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderElement.cpp        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -925,7 +925,7 @@
</span><span class="cx"> void RenderElement::removeAnonymousWrappersForInlinesIfNecessary()
</span><span class="cx"> {
</span><span class="cx">     RenderBlock&amp; parentBlock = downcast&lt;RenderBlock&gt;(*parent());
</span><del>-    if (!parentBlock.canCollapseAnonymousBlockChild())
</del><ins>+    if (!parentBlock.canDropAnonymousBlockChild())
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     // We have changed to floated or out-of-flow positioning so maybe all our parent's
</span><span class="lines">@@ -944,7 +944,7 @@
</span><span class="cx">     for (current = parent()-&gt;firstChild(); current; current = next) {
</span><span class="cx">         next = current-&gt;nextSibling();
</span><span class="cx">         if (current-&gt;isAnonymousBlock())
</span><del>-            parentBlock.collapseAnonymousBoxChild(parentBlock, downcast&lt;RenderBlock&gt;(current));
</del><ins>+            parentBlock.dropAnonymousBoxChild(parentBlock, downcast&lt;RenderBlock&gt;(*current));
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCorerenderingRenderFlexibleBoxh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderFlexibleBox.h (192214 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderFlexibleBox.h        2015-11-10 08:59:44 UTC (rev 192214)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderFlexibleBox.h        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -45,7 +45,7 @@
</span><span class="cx">     virtual const char* renderName() const override;
</span><span class="cx"> 
</span><span class="cx">     virtual bool avoidsFloats() const override final { return true; }
</span><del>-    virtual bool canCollapseAnonymousBlockChild() const override final { return false; }
</del><ins>+    virtual bool canDropAnonymousBlockChild() const override final { return false; }
</ins><span class="cx">     virtual void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) override final;
</span><span class="cx"> 
</span><span class="cx">     virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const override;
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCorerenderingRenderGridh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderGrid.h (192214 => 192215)</h4>
<pre class="diff"><span>
<span class="info">--- releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderGrid.h        2015-11-10 08:59:44 UTC (rev 192214)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/rendering/RenderGrid.h        2015-11-10 09:50:20 UTC (rev 192215)
</span><span class="lines">@@ -52,7 +52,7 @@
</span><span class="cx">     virtual void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) override;
</span><span class="cx"> 
</span><span class="cx">     virtual bool avoidsFloats() const override { return true; }
</span><del>-    virtual bool canCollapseAnonymousBlockChild() const override { return false; }
</del><ins>+    virtual bool canDropAnonymousBlockChild() const override { return false; }
</ins><span class="cx"> 
</span><span class="cx">     const Vector&lt;LayoutUnit&gt;&amp; columnPositions() const { return m_columnPositions; }
</span><span class="cx">     const Vector&lt;LayoutUnit&gt;&amp; rowPositions() const { return m_rowPositions; }
</span></span></pre>
</div>
</div>

</body>
</html>