Index: Source/core/paint/DeprecatedPaintLayer.h |
diff --git a/Source/core/paint/DeprecatedPaintLayer.h b/Source/core/paint/DeprecatedPaintLayer.h |
index ab33b034bbf2d092d77a4e4c6db2901e3248cbbf..07155d41d34941c5cb88ad850524513c4390f61a 100644 |
--- a/Source/core/paint/DeprecatedPaintLayer.h |
+++ b/Source/core/paint/DeprecatedPaintLayer.h |
@@ -111,7 +111,9 @@ public: |
DeprecatedPaintLayer* firstChild() const { return m_first; } |
DeprecatedPaintLayer* lastChild() const { return m_last; } |
- const DeprecatedPaintLayer* compositingContainer() const; |
+ // TODO(wangxianzhu): Find a better name for it. 'paintContainer' might be good but |
+ // we can't use it for now because it conflicts with PaintInfo::paintContainer. |
+ DeprecatedPaintLayer* compositingContainer() const; |
void addChild(DeprecatedPaintLayer* newChild, DeprecatedPaintLayer* beforeChild = 0); |
DeprecatedPaintLayer* removeChild(DeprecatedPaintLayer*); |
@@ -545,6 +547,10 @@ public: |
static LayoutRect transparencyClipBox(const DeprecatedPaintLayer*, const DeprecatedPaintLayer* rootLayer, TransparencyClipBoxBehavior transparencyBehavior, |
TransparencyClipBoxMode transparencyMode, GlobalPaintFlags = GlobalPaintNormalPhase); |
+ bool needsRepaint() const { return m_needsRepaint; } |
+ void setNeedsRepaint(); |
+ void clearNeedsRepaint() { m_needsRepaint = false; } |
+ |
private: |
// Bounding box in the coordinates of this layer. |
LayoutRect logicalBoundingBox() const; |
@@ -617,6 +623,8 @@ private: |
void blockSelectionGapsBoundsChanged(); |
+ void markCompositingContainerChainForNeedsRepaint(); |
+ |
DeprecatedPaintLayerType m_layerType; |
// Self-painting layer is an optimization where we avoid the heavy Layer painting |
@@ -668,6 +676,8 @@ private: |
// and we don't yet know to what graphics layer this Layer will be assigned. |
unsigned m_lostGroupedMapping : 1; |
+ unsigned m_needsRepaint : 1; |
+ |
LayoutBoxModelObject* m_layoutObject; |
DeprecatedPaintLayer* m_parent; |