Title: [228735] releases/WebKitGTK/webkit-2.20/Source/WebCore
Revision
228735
Author
carlo...@webkit.org
Date
2018-02-19 23:26:43 -0800 (Mon, 19 Feb 2018)

Log Message

Merge r228391 - [RenderTreeBuilder] Move RenderBlock::dropAnonymousBoxChild to RenderTreeBuilder
https://bugs.webkit.org/show_bug.cgi?id=182704
<rdar://problem/37469469>

Reviewed by Antti Koivisto.

All the callsites are now in RenderTreeBuilder.

No change in functionality.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::dropAnonymousBoxChild): Deleted.
* rendering/RenderBlock.h:
* rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::removeAnonymousWrappersForInlineChildrenIfNeeded):
(WebCore::RenderTreeBuilder::dropAnonymousBoxChild):
* rendering/updating/RenderTreeBuilder.h:
* rendering/updating/RenderTreeBuilderBlock.cpp:
(WebCore::RenderTreeBuilder::Block::takeChild):
(WebCore::RenderTreeBuilder::Block::dropAnonymousBoxChild):
* rendering/updating/RenderTreeBuilderBlock.h:

Modified Paths

Diff

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/ChangeLog (228734 => 228735)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/ChangeLog	2018-02-20 07:26:38 UTC (rev 228734)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/ChangeLog	2018-02-20 07:26:43 UTC (rev 228735)
@@ -1,5 +1,29 @@
 2018-02-12  Zalan Bujtas  <za...@apple.com>
 
+        [RenderTreeBuilder] Move RenderBlock::dropAnonymousBoxChild to RenderTreeBuilder
+        https://bugs.webkit.org/show_bug.cgi?id=182704
+        <rdar://problem/37469469>
+
+        Reviewed by Antti Koivisto.
+
+        All the callsites are now in RenderTreeBuilder.
+
+        No change in functionality.
+
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::dropAnonymousBoxChild): Deleted.
+        * rendering/RenderBlock.h:
+        * rendering/updating/RenderTreeBuilder.cpp:
+        (WebCore::RenderTreeBuilder::removeAnonymousWrappersForInlineChildrenIfNeeded):
+        (WebCore::RenderTreeBuilder::dropAnonymousBoxChild):
+        * rendering/updating/RenderTreeBuilder.h:
+        * rendering/updating/RenderTreeBuilderBlock.cpp:
+        (WebCore::RenderTreeBuilder::Block::takeChild):
+        (WebCore::RenderTreeBuilder::Block::dropAnonymousBoxChild):
+        * rendering/updating/RenderTreeBuilderBlock.h:
+
+2018-02-12  Zalan Bujtas  <za...@apple.com>
+
         [RenderTreeBuilder] Remove redundant RenderTreeBuilder instance
         https://bugs.webkit.org/show_bug.cgi?id=182700
         <rdar://problem/37463958>

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlock.cpp (228734 => 228735)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlock.cpp	2018-02-20 07:26:38 UTC (rev 228734)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlock.cpp	2018-02-20 07:26:43 UTC (rev 228735)
@@ -482,18 +482,6 @@
         cache->deferRecomputeIsIgnored(element());
 }
 
-void RenderBlock::dropAnonymousBoxChild(RenderTreeBuilder& builder, RenderBlock& child)
-{
-    setNeedsLayoutAndPrefWidthsRecalc();
-    setChildrenInline(child.childrenInline());
-    RenderObject* nextSibling = child.nextSibling();
-
-    auto toBeDeleted = takeChildInternal(child);
-    child.moveAllChildrenTo(builder, this, nextSibling, RenderBoxModelObject::NormalizeAfterInsertion::No);
-    // Delete the now-empty block's lines and nuke it.
-    child.deleteLines();
-}
-
 RenderPtr<RenderObject> RenderBlock::takeChild(RenderTreeBuilder& builder, RenderObject& oldChild)
 {
     return builder.takeChildFromRenderBlock(*this, oldChild);

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlock.h (228734 => 228735)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlock.h	2018-02-20 07:26:38 UTC (rev 228734)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/RenderBlock.h	2018-02-20 07:26:43 UTC (rev 228735)
@@ -191,7 +191,6 @@
 
     static RenderPtr<RenderBlock> createAnonymousWithParentRendererAndDisplay(const RenderBox& parent, EDisplay = BLOCK);
     RenderPtr<RenderBlock> createAnonymousBlock(EDisplay = BLOCK) const;
-    void dropAnonymousBoxChild(RenderTreeBuilder&, RenderBlock& child);
 
     RenderPtr<RenderBox> createAnonymousBoxWithSameTypeAs(const RenderBox&) const override;
 

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp (228734 => 228735)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp	2018-02-20 07:26:38 UTC (rev 228734)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp	2018-02-20 07:26:43 UTC (rev 228735)
@@ -342,7 +342,7 @@
     for (current = blockParent.firstChild(); current; current = next) {
         next = current->nextSibling();
         if (current->isAnonymousBlock())
-            blockParent.dropAnonymousBoxChild(*this, downcast<RenderBlock>(*current));
+            blockBuilder().dropAnonymousBoxChild(blockParent, downcast<RenderBlock>(*current));
     }
 }
 
@@ -405,6 +405,12 @@
         removeFromParentAndDestroyCleaningUpAnonymousWrappers(destroyRootParent);
     // WARNING: child is deleted here.
 }
+
+void RenderTreeBuilder::dropAnonymousBoxChild(RenderBlock& parent, RenderBlock& child)
+{
+    blockBuilder().dropAnonymousBoxChild(parent, child);
+}
+
 void RenderTreeBuilder::multiColumnRelativeWillBeRemoved(RenderMultiColumnFlow& flow, RenderObject& relative)
 {
     multiColumnBuilder().multiColumnRelativeWillBeRemoved(flow, relative);

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.h (228734 => 228735)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.h	2018-02-20 07:26:38 UTC (rev 228734)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilder.h	2018-02-20 07:26:43 UTC (rev 228735)
@@ -88,6 +88,7 @@
     void removeFromParentAndDestroyCleaningUpAnonymousWrappers(RenderObject& child);
     void multiColumnDescendantInserted(RenderMultiColumnFlow&, RenderObject& newDescendant);
     void multiColumnRelativeWillBeRemoved(RenderMultiColumnFlow&, RenderObject& relative);
+    void dropAnonymousBoxChild(RenderBlock& parent, RenderBlock& child);
 
 private:
     class FirstLetter;

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderBlock.cpp (228734 => 228735)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderBlock.cpp	2018-02-20 07:26:38 UTC (rev 228734)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderBlock.cpp	2018-02-20 07:26:43 UTC (rev 228735)
@@ -325,7 +325,7 @@
     if (canMergeAnonymousBlocks && child && !child->previousSibling() && !child->nextSibling() && parent.canDropAnonymousBlockChild()) {
         // The removal has knocked us down to containing only a single anonymous
         // box. We can pull the content right back up into our box.
-        parent.dropAnonymousBoxChild(m_builder, downcast<RenderBlock>(*child));
+        dropAnonymousBoxChild(parent, downcast<RenderBlock>(*child));
     } else if (((prev && prev->isAnonymousBlock()) || (next && next->isAnonymousBlock())) && parent.canDropAnonymousBlockChild()) {
         // It's possible that the removal has knocked us down to a single anonymous
         // block with floating siblings.
@@ -341,7 +341,7 @@
                 }
             }
             if (dropAnonymousBlock)
-                parent.dropAnonymousBoxChild(m_builder, anonBlock);
+                dropAnonymousBoxChild(parent, anonBlock);
         }
     }
 
@@ -353,4 +353,16 @@
     return takenChild;
 }
 
+void RenderTreeBuilder::Block::dropAnonymousBoxChild(RenderBlock& parent, RenderBlock& child)
+{
+    parent.setNeedsLayoutAndPrefWidthsRecalc();
+    parent.setChildrenInline(child.childrenInline());
+    auto* nextSibling = child.nextSibling();
+
+    auto toBeDeleted = parent.takeChildInternal(child);
+    child.moveAllChildrenTo(m_builder, &parent, nextSibling, RenderBoxModelObject::NormalizeAfterInsertion::No);
+    // Delete the now-empty block's lines and nuke it.
+    child.deleteLines();
 }
+
+}

Modified: releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderBlock.h (228734 => 228735)


--- releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderBlock.h	2018-02-20 07:26:38 UTC (rev 228734)
+++ releases/WebKitGTK/webkit-2.20/Source/WebCore/rendering/updating/RenderTreeBuilderBlock.h	2018-02-20 07:26:43 UTC (rev 228735)
@@ -38,6 +38,7 @@
 
     RenderPtr<RenderObject> takeChild(RenderBlock& parent, RenderObject& oldChild);
 
+    void dropAnonymousBoxChild(RenderBlock& parent, RenderBlock& child);
     void childBecameNonInline(RenderBlock& parent, RenderElement& child);
 
 private:
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to