Index: Source/core/layout/LayoutObject.h |
diff --git a/Source/core/layout/LayoutObject.h b/Source/core/layout/LayoutObject.h |
index 1f5e248007293af160a3578f1a3882552a0a4ab1..a2e517a06948b67c6243217ce5ed71a408501896 100644 |
--- a/Source/core/layout/LayoutObject.h |
+++ b/Source/core/layout/LayoutObject.h |
@@ -839,10 +839,14 @@ public: |
void getTextDecorations(unsigned decorations, AppliedTextDecoration& underline, AppliedTextDecoration& overline, AppliedTextDecoration& linethrough, bool quirksMode = false, bool firstlineStyle = false); |
- // Return the LayoutBoxModelObject in the container chain which is responsible for painting this object, or 0 |
+ // Return the LayoutBoxModelObject in the container chain which is responsible for painting this object, or layout view |
// if painting is root-relative. This is the container that should be passed to the 'forPaintInvalidation' |
// methods. |
+ const LayoutBoxModelObject& containerForPaintInvalidationOnRootedTree() const; |
+ |
+ // This method will be deprecated in a long term, replaced by containerForPaintInvalidationOnRootedTree. |
const LayoutBoxModelObject* containerForPaintInvalidation() const; |
+ |
const LayoutBoxModelObject* adjustCompositedContainerForSpecialAncestors(const LayoutBoxModelObject* paintInvalidationContainer) const; |
bool isPaintInvalidationContainer() const; |
@@ -860,9 +864,7 @@ public: |
// Actually do the paint invalidate of rect r for this object which has been computed in the coordinate space |
// of the GraphicsLayer backing of |paintInvalidationContainer|. Note that this coordinaten space is not the same |
// as the local coordinate space of |paintInvalidationContainer| in the presence of layer squashing. |
- // If |paintInvalidationContainer| is 0, invalidate paints via the view. |
- // FIXME: |paintInvalidationContainer| should never be 0. See crbug.com/363699. |
- void invalidatePaintUsingContainer(const LayoutBoxModelObject* paintInvalidationContainer, const LayoutRect&, PaintInvalidationReason) const; |
+ void invalidatePaintUsingContainer(const LayoutBoxModelObject& paintInvalidationContainer, const LayoutRect&, PaintInvalidationReason) const; |
// Invalidate the paint of a specific subrectangle within a given object. The rect |r| is in the object's coordinate space. |
void invalidatePaintRectangle(const LayoutRect&) const; |
@@ -1229,7 +1231,7 @@ private: |
void setLayoutDidGetCalledSinceLastFrame(); |
void clearLayoutDidGetCalledSinceLastFrame() { m_bitfields.setLayoutDidGetCalledSinceLastFrame(false); } |
- void invalidatePaintIncludingNonCompositingDescendantsInternal(const LayoutBoxModelObject* repaintContainer); |
+ void invalidatePaintIncludingNonCompositingDescendantsInternal(const LayoutBoxModelObject& repaintContainer); |
LayoutRect previousSelectionRectForPaintInvalidation() const; |
void setPreviousSelectionRectForPaintInvalidation(const LayoutRect&); |