Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1537)

Unified Diff: Source/core/paint/DeprecatedPaintLayer.h

Issue 1294233004: Subtree caching implementation in blink-core (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Don't mark non-self-painting layers for needsRepaint Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/layout/LayoutObject.cpp ('k') | Source/core/paint/DeprecatedPaintLayer.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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;
« no previous file with comments | « Source/core/layout/LayoutObject.cpp ('k') | Source/core/paint/DeprecatedPaintLayer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698