Changeset 208465 in webkit
- Timestamp:
- Nov 9, 2016 12:21:49 PM (7 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r208464 r208465 1 2016-11-09 Zalan Bujtas <zalan@apple.com> 2 3 RenderFlowThread::flowThreadRelativeWillBeRemoved should take RenderObject& instead of RenderObject* 4 https://bugs.webkit.org/show_bug.cgi?id=164543 5 6 Reviewed by Simon Fraser. 7 8 No change in functionality. 9 10 * rendering/RenderBlockFlow.cpp: 11 (WebCore::RenderBlockFlow::removeChild): 12 * rendering/RenderFlowThread.h: 13 * rendering/RenderMultiColumnFlowThread.cpp: 14 (WebCore::RenderMultiColumnFlowThread::handleSpannerRemoval): 15 (WebCore::RenderMultiColumnFlowThread::flowThreadRelativeWillBeRemoved): 16 * rendering/RenderMultiColumnFlowThread.h: 17 1 18 2016-11-09 Jer Noble <jer.noble@apple.com> 2 19 -
trunk/Source/WebCore/rendering/RenderBlockFlow.cpp
r208214 r208465 3884 3884 RenderFlowThread* flowThread = multiColumnFlowThread(); 3885 3885 if (flowThread && flowThread != &oldChild) 3886 flowThread->flowThreadRelativeWillBeRemoved( &oldChild);3886 flowThread->flowThreadRelativeWillBeRemoved(oldChild); 3887 3887 } 3888 3888 RenderBlock::removeChild(oldChild); -
trunk/Source/WebCore/rendering/RenderFlowThread.h
r208005 r208465 95 95 virtual void flowThreadDescendantInserted(RenderObject&) { } 96 96 // Called when a sibling or descendant of the flow thread is about to be removed. 97 virtual void flowThreadRelativeWillBeRemoved(RenderObject *) { }97 virtual void flowThreadRelativeWillBeRemoved(RenderObject&) { } 98 98 // Called when a descendant box's layout is finished and it has been positioned within its container. 99 99 virtual void flowThreadDescendantBoxLaidOut(RenderBox*) { } -
trunk/Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp
r208005 r208465 422 422 } 423 423 424 void RenderMultiColumnFlowThread::handleSpannerRemoval(RenderObject *spanner)424 void RenderMultiColumnFlowThread::handleSpannerRemoval(RenderObject& spanner) 425 425 { 426 426 // The placeholder may already have been removed, but if it hasn't, do so now. 427 if (RenderMultiColumnSpannerPlaceholder* placeholder = m_spannerMap.get( downcast<RenderBox>(spanner))) {427 if (RenderMultiColumnSpannerPlaceholder* placeholder = m_spannerMap.get(&downcast<RenderBox>(spanner))) { 428 428 placeholder->parent()->removeChild(*placeholder); 429 m_spannerMap.remove( downcast<RenderBox>(spanner));430 } 431 432 if (RenderObject* next = spanner ->nextSibling()) {433 if (RenderObject* previous = spanner ->previousSibling()) {429 m_spannerMap.remove(&downcast<RenderBox>(spanner)); 430 } 431 432 if (RenderObject* next = spanner.nextSibling()) { 433 if (RenderObject* previous = spanner.previousSibling()) { 434 434 if (previous->isRenderMultiColumnSet() && next->isRenderMultiColumnSet()) { 435 435 // Merge two sets that no longer will be separated by a spanner. … … 441 441 } 442 442 443 void RenderMultiColumnFlowThread::flowThreadRelativeWillBeRemoved(RenderObject *relative)443 void RenderMultiColumnFlowThread::flowThreadRelativeWillBeRemoved(RenderObject& relative) 444 444 { 445 445 if (m_beingEvacuated) 446 446 return; 447 447 invalidateRegions(); 448 if (is<RenderMultiColumnSpannerPlaceholder>( *relative)) {448 if (is<RenderMultiColumnSpannerPlaceholder>(relative)) { 449 449 // Remove the map entry for this spanner, but leave the actual spanner renderer alone. Also 450 450 // keep the reference to the spanner, since the placeholder may be about to be re-inserted 451 451 // in the tree. 452 ASSERT(relative ->isDescendantOf(this));453 m_spannerMap.remove(downcast<RenderMultiColumnSpannerPlaceholder>( *relative).spanner());452 ASSERT(relative.isDescendantOf(this)); 453 m_spannerMap.remove(downcast<RenderMultiColumnSpannerPlaceholder>(relative).spanner()); 454 454 return; 455 455 } 456 if (relative ->style().columnSpan() == ColumnSpanAll) {457 if (relative ->parent() != parent())456 if (relative.style().columnSpan() == ColumnSpanAll) { 457 if (relative.parent() != parent()) 458 458 return; // not a valid spanner. 459 459 -
trunk/Source/WebCore/rendering/RenderMultiColumnFlowThread.h
r208005 r208465 115 115 RenderObject* resolveMovedChild(RenderObject* child) const override; 116 116 void flowThreadDescendantInserted(RenderObject&) override; 117 void flowThreadRelativeWillBeRemoved(RenderObject *) override;117 void flowThreadRelativeWillBeRemoved(RenderObject&) override; 118 118 void flowThreadDescendantBoxLaidOut(RenderBox*) override; 119 119 void computeLogicalHeight(LayoutUnit logicalHeight, LayoutUnit logicalTop, LogicalExtentComputedValues&) const override; … … 126 126 bool isPageLogicalHeightKnown() const override; 127 127 128 void handleSpannerRemoval(RenderObject *spanner);128 void handleSpannerRemoval(RenderObject& spanner); 129 129 RenderObject* processPossibleSpannerDescendant(RenderObject*& subtreeRoot, RenderObject& descendant); 130 130
Note: See TracChangeset
for help on using the changeset viewer.