Chromium Code Reviews| Index: Source/core/rendering/RenderBox.cpp |
| diff --git a/Source/core/rendering/RenderBox.cpp b/Source/core/rendering/RenderBox.cpp |
| index d08b3e586e7a1029c8b6f54e29794111935075af..d3f05df2fad17f08318a9231172df9c9e4b3fdb1 100644 |
| --- a/Source/core/rendering/RenderBox.cpp |
| +++ b/Source/core/rendering/RenderBox.cpp |
| @@ -52,6 +52,7 @@ |
| #include "core/rendering/RenderLayer.h" |
| #include "core/rendering/RenderListBox.h" |
| #include "core/rendering/RenderListMarker.h" |
| +#include "core/rendering/RenderMultiColumnSpannerPlaceholder.h" |
| #include "core/rendering/RenderTableCell.h" |
| #include "core/rendering/RenderView.h" |
| #include "core/rendering/compositing/RenderLayerCompositor.h" |
| @@ -99,6 +100,15 @@ RenderBox::RenderBox(ContainerNode* node) |
| setIsBox(); |
| } |
| +void RenderBox::willBeRemovedFromTree() |
| +{ |
| + if (m_rareData && m_rareData->m_spannerPlaceholder) { |
| + m_rareData->m_spannerPlaceholder->spannerWillBeRemoved(); |
| + m_rareData->m_spannerPlaceholder = 0; |
| + } |
| + RenderBoxModelObject::willBeRemovedFromTree(); |
| +} |
| + |
| void RenderBox::willBeDestroyed() |
| { |
| clearOverrideSize(); |
| @@ -1658,6 +1668,14 @@ void RenderBox::deleteLineBoxWrapper() |
| } |
| } |
| +void RenderBox::setSpannerPlaceholder(RenderMultiColumnSpannerPlaceholder* placeholder) |
|
Julien - ping for review
2014/12/11 19:09:37
We could maybe split setSpannerPlaceHolder (with A
mstensho (USE GERRIT)
2014/12/11 21:01:14
Done.
|
| +{ |
| + if (!placeholder && !m_rareData) |
| + return; |
| + RELEASE_ASSERT(!placeholder || !m_rareData || !m_rareData->m_spannerPlaceholder); // not expected to change directly from one spanner to another. |
| + ensureRareData().m_spannerPlaceholder = placeholder; |
| +} |
| + |
| LayoutRect RenderBox::clippedOverflowRectForPaintInvalidation(const RenderLayerModelObject* paintInvalidationContainer, const PaintInvalidationState* paintInvalidationState) const |
| { |
| if (style()->visibility() != VISIBLE) { |