Skip to content

Commit

Permalink
Merge r228465 - [RenderTreeBuilder] Remove redundant RenderTreeBuilde…
Browse files Browse the repository at this point in the history
…r methods

https://bugs.webkit.org/show_bug.cgi?id=182770
<rdar://problem/37525627>

Reviewed by Daniel Bates.

No change in functionality.

* rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::dropAnonymousBoxChild): Deleted.
(WebCore::RenderTreeBuilder::moveRubyChildren): Deleted.
(WebCore::RenderTreeBuilder::resolveMovedChildForMultiColumnFlow): Deleted.
* rendering/updating/RenderTreeBuilder.h:
* rendering/updating/RenderTreeBuilderBlockFlow.cpp:
(WebCore::RenderTreeBuilder::BlockFlow::insertChild):
* rendering/updating/RenderTreeBuilderInline.cpp:
(WebCore::RenderTreeBuilder::Inline::insertChild):
* rendering/updating/RenderTreeBuilderRuby.cpp:
(WebCore::RenderTreeBuilder::Ruby::takeChild):
  • Loading branch information
alanbaradlay authored and carlosgcampos committed Feb 20, 2018
1 parent f60bf5d commit 5a03800
Show file tree
Hide file tree
Showing 6 changed files with 27 additions and 24 deletions.
22 changes: 22 additions & 0 deletions Source/WebCore/ChangeLog
@@ -1,3 +1,25 @@
2018-02-14 Zalan Bujtas <zalan@apple.com>

[RenderTreeBuilder] Remove redundant RenderTreeBuilder methods
https://bugs.webkit.org/show_bug.cgi?id=182770
<rdar://problem/37525627>

Reviewed by Daniel Bates.

No change in functionality.

* rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::dropAnonymousBoxChild): Deleted.
(WebCore::RenderTreeBuilder::moveRubyChildren): Deleted.
(WebCore::RenderTreeBuilder::resolveMovedChildForMultiColumnFlow): Deleted.
* rendering/updating/RenderTreeBuilder.h:
* rendering/updating/RenderTreeBuilderBlockFlow.cpp:
(WebCore::RenderTreeBuilder::BlockFlow::insertChild):
* rendering/updating/RenderTreeBuilderInline.cpp:
(WebCore::RenderTreeBuilder::Inline::insertChild):
* rendering/updating/RenderTreeBuilderRuby.cpp:
(WebCore::RenderTreeBuilder::Ruby::takeChild):

2018-02-14 Zalan Bujtas <zalan@apple.com>

[RenderTreeBuilder] Move RenderElement::takeChild() to RenderTreeBuilder
Expand Down
15 changes: 0 additions & 15 deletions Source/WebCore/rendering/updating/RenderTreeBuilder.cpp
Expand Up @@ -457,11 +457,6 @@ void RenderTreeBuilder::removeFromParentAndDestroyCleaningUpAnonymousWrappers(Re
// WARNING: child is deleted here.
}

void RenderTreeBuilder::dropAnonymousBoxChild(RenderBlock& parent, RenderBlock& child)
{
blockBuilder().dropAnonymousBoxChild(parent, child);
}

void RenderTreeBuilder::insertChildToRenderInline(RenderInline& parent, RenderPtr<RenderObject> child, RenderObject* beforeChild)
{
inlineBuilder().insertChild(parent, WTFMove(child), beforeChild);
Expand Down Expand Up @@ -507,11 +502,6 @@ void RenderTreeBuilder::insertChildToRenderTableRow(RenderTableRow& parent, Rend
tableBuilder().insertChild(parent, WTFMove(child), beforeChild);
}

void RenderTreeBuilder::moveRubyChildren(RenderRubyBase& from, RenderRubyBase& to)
{
rubyBuilder().moveChildren(from, to);
}

void RenderTreeBuilder::insertChildToRenderBlockFlow(RenderBlockFlow& parent, RenderPtr<RenderObject> child, RenderObject* beforeChild)
{
blockFlowBuilder().insertChild(parent, WTFMove(child), beforeChild);
Expand All @@ -532,11 +522,6 @@ void RenderTreeBuilder::updateAfterDescendants(RenderElement& renderer)
multiColumnBuilder().updateAfterDescendants(downcast<RenderBlockFlow>(renderer));
}

RenderObject* RenderTreeBuilder::resolveMovedChildForMultiColumnFlow(RenderFragmentedFlow& enclosingFragmentedFlow, RenderObject* beforeChild)
{
return multiColumnBuilder().resolveMovedChild(enclosingFragmentedFlow, beforeChild);
}

RenderPtr<RenderObject> RenderTreeBuilder::takeChildFromRenderMenuList(RenderMenuList& parent, RenderObject& child)
{
auto* innerRenderer = parent.innerRenderer();
Expand Down
8 changes: 2 additions & 6 deletions Source/WebCore/rendering/updating/RenderTreeBuilder.h
Expand Up @@ -80,16 +80,10 @@ class RenderTreeBuilder {

RenderPtr<RenderObject> takeChildFromRenderElement(RenderElement& parent, RenderObject& child) WARN_UNUSED_RETURN;

bool childRequiresTable(const RenderElement& parent, const RenderObject& child);
void makeChildrenNonInline(RenderBlock& parent, RenderObject* insertionPoint = nullptr);
RenderObject* splitAnonymousBoxesAroundChild(RenderBox& parent, RenderObject* beforeChild);
void moveRubyChildren(RenderRubyBase& from, RenderRubyBase& to);
void childFlowStateChangesAndAffectsParentBlock(RenderElement& child);
void childFlowStateChangesAndNoLongerAffectsParentBlock(RenderElement& child);
RenderObject* resolveMovedChildForMultiColumnFlow(RenderFragmentedFlow& enclosingFragmentedFlow, RenderObject* beforeChild);
void removeFromParentAndDestroyCleaningUpAnonymousWrappers(RenderObject& child);
void multiColumnDescendantInserted(RenderMultiColumnFlow&, RenderObject& newDescendant);
void dropAnonymousBoxChild(RenderBlock& parent, RenderBlock& child);

private:
class FirstLetter;
Expand All @@ -104,6 +98,8 @@ class RenderTreeBuilder {
class SVG;
class MathML;

RenderObject* splitAnonymousBoxesAroundChild(RenderBox& parent, RenderObject* beforeChild);
void makeChildrenNonInline(RenderBlock& parent, RenderObject* insertionPoint = nullptr);
void removeAnonymousWrappersForInlineChildrenIfNeeded(RenderElement& parent);
RenderPtr<RenderObject> takeChildFromRenderMenuList(RenderMenuList& parent, RenderObject& child);
RenderPtr<RenderObject> takeChildFromRenderButton(RenderButton& parent, RenderObject& child);
Expand Down
Expand Up @@ -41,7 +41,7 @@ void RenderTreeBuilder::BlockFlow::insertChild(RenderBlockFlow& parent, RenderPt
return m_builder.insertChild(*parent.multiColumnFlow(), WTFMove(child), beforeChild);
auto* beforeChildOrPlaceholder = beforeChild;
if (auto* containingFragmentedFlow = parent.enclosingFragmentedFlow())
beforeChildOrPlaceholder = m_builder.resolveMovedChildForMultiColumnFlow(*containingFragmentedFlow, beforeChild);
beforeChildOrPlaceholder = m_builder.multiColumnBuilder().resolveMovedChild(*containingFragmentedFlow, beforeChild);
m_builder.insertChildToRenderBlock(parent, WTFMove(child), beforeChildOrPlaceholder);
}

Expand Down
Expand Up @@ -106,7 +106,7 @@ void RenderTreeBuilder::Inline::insertChild(RenderInline& parent, RenderPtr<Rend
{
auto* beforeChildOrPlaceholder = beforeChild;
if (auto* fragmentedFlow = parent.enclosingFragmentedFlow())
beforeChildOrPlaceholder = m_builder.resolveMovedChildForMultiColumnFlow(*fragmentedFlow, beforeChild);
beforeChildOrPlaceholder = m_builder.multiColumnBuilder().resolveMovedChild(*fragmentedFlow, beforeChild);
if (parent.continuation()) {
insertChildToContinuation(parent, WTFMove(child), beforeChildOrPlaceholder);
return;
Expand Down
Expand Up @@ -435,7 +435,7 @@ RenderPtr<RenderObject> RenderTreeBuilder::Ruby::takeChild(RenderRubyRun& parent
if (rightRun.hasRubyBase()) {
RenderRubyBase* rightBase = rightRun.rubyBase();
// Collect all children in a single base, then swap the bases.
m_builder.moveRubyChildren(*rightBase, *base);
moveChildren(*rightBase, *base);
parent.moveChildTo(m_builder, &rightRun, base, RenderBoxModelObject::NormalizeAfterInsertion::No);
rightRun.moveChildTo(m_builder, &parent, rightBase, RenderBoxModelObject::NormalizeAfterInsertion::No);
// The now empty ruby base will be removed below.
Expand Down

0 comments on commit 5a03800

Please sign in to comment.