Changeset 228914 in webkit
- Timestamp:
- Feb 21, 2018 10:17:45 PM (6 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r228912 r228914 1 2018-02-21 Zalan Bujtas <zalan@apple.com> 2 3 [RenderTreeBuilder] Move RenderObject::insertedInto() mutation logic to RenderTreeBuilder 4 https://bugs.webkit.org/show_bug.cgi?id=183022 5 <rdar://problem/37764326> 6 7 Reviewed by Antti Koivisto. 8 9 No change in functionality. 10 11 * rendering/RenderObject.cpp: 12 (WebCore::RenderObject::insertedIntoTree): 13 * rendering/updating/RenderTreeBuilder.cpp: 14 (WebCore::RenderTreeBuilder::insertChildToRenderElementInternal): 15 (WebCore::RenderTreeBuilder::moveChildrenTo): 16 (WebCore::RenderTreeBuilder::multiColumnDescendantInserted): Deleted. 17 * rendering/updating/RenderTreeBuilder.h: 18 1 19 2018-02-21 Tim Horton <timothy_horton@apple.com> 2 20 -
trunk/Source/WebCore/rendering/RenderObject.cpp
r228908 r228914 1450 1450 { 1451 1451 // FIXME: We should ASSERT(isRooted()) here but generated content makes some out-of-order insertion. 1452 1453 1452 if (!isFloating() && parent()->childrenInline()) 1454 1453 parent()->dirtyLinesFromChangedChild(*this); 1455 1456 auto* fragmentedFlow = enclosingFragmentedFlow();1457 if (is<RenderMultiColumnFlow>(fragmentedFlow))1458 RenderTreeBuilder::current()->multiColumnDescendantInserted(downcast<RenderMultiColumnFlow>(*fragmentedFlow), *this);1459 1454 } 1460 1455 -
trunk/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp
r228899 r228914 388 388 389 389 while (beforeChild && beforeChild->parent() && beforeChild->parent() != &parent) 390 beforeChild = beforeChild->parent();390 beforeChild = beforeChild->parent(); 391 391 392 392 ASSERT(!beforeChild || beforeChild->parent() == &parent); … … 399 399 if (!parent.renderTreeBeingDestroyed()) { 400 400 newChild->insertedIntoTree(); 401 402 auto* fragmentedFlow = newChild->enclosingFragmentedFlow(); 403 if (is<RenderMultiColumnFlow>(fragmentedFlow)) 404 multiColumnBuilder().multiColumnDescendantInserted(downcast<RenderMultiColumnFlow>(*fragmentedFlow), *newChild); 405 401 406 if (is<RenderElement>(*newChild)) 402 RenderCounter::rendererSubtreeAttached(downcast<RenderElement>(*newChild));407 RenderCounter::rendererSubtreeAttached(downcast<RenderElement>(*newChild)); 403 408 } 404 409 … … 406 411 parent.setPreferredLogicalWidthsDirty(true); 407 412 if (!parent.normalChildNeedsLayout()) 408 parent.setChildNeedsLayout(); // We may supply the static position for an absolute positioned child.413 parent.setChildNeedsLayout(); // We may supply the static position for an absolute positioned child. 409 414 410 415 if (AXObjectCache* cache = parent.document().axObjectCache()) 411 cache->childrenChanged(&parent, newChild);416 cache->childrenChanged(&parent, newChild); 412 417 if (is<RenderBlockFlow>(parent)) 413 downcast<RenderBlockFlow>(parent).invalidateLineLayoutPath();418 downcast<RenderBlockFlow>(parent).invalidateLineLayoutPath(); 414 419 if (parent.hasOutlineAutoAncestor() || parent.outlineStyleForRepaint().outlineStyleIsAuto()) 415 newChild->setHasOutlineAutoAncestor();420 newChild->setHasOutlineAutoAncestor(); 416 421 } 417 422 … … 485 490 // This is the first letter, skip it. 486 491 if (firstLetterObj == nextSibling) 487 nextSibling = nextSibling->nextSibling();492 nextSibling = nextSibling->nextSibling(); 488 493 } 489 494 … … 633 638 } 634 639 635 void RenderTreeBuilder::multiColumnDescendantInserted(RenderMultiColumnFlow& flow, RenderObject& newDescendant)636 {637 multiColumnBuilder().multiColumnDescendantInserted(flow, newDescendant);638 }639 640 640 static bool isAnonymousAndSafeToDelete(RenderElement& element) 641 641 { -
trunk/Source/WebCore/rendering/updating/RenderTreeBuilder.h
r228899 r228914 57 57 void childFlowStateChangesAndAffectsParentBlock(RenderElement& child); 58 58 void childFlowStateChangesAndNoLongerAffectsParentBlock(RenderElement& child); 59 void multiColumnDescendantInserted(RenderMultiColumnFlow&, RenderObject& newDescendant);60 59 61 60 private:
Note: See TracChangeset
for help on using the changeset viewer.