Index: Source/core/rendering/RenderLayer.h |
diff --git a/Source/core/rendering/RenderLayer.h b/Source/core/rendering/RenderLayer.h |
index cf9654aa369d9899df8cf2db658482a291ef91a7..a407f1ddbfebc66f5bd7f1b11ad0c7cfdce9a77d 100644 |
--- a/Source/core/rendering/RenderLayer.h |
+++ b/Source/core/rendering/RenderLayer.h |
@@ -358,6 +358,9 @@ public: |
// compositing state may legally be read. |
bool isAllowedToQueryCompositingState() const; |
+ // This returns true if our current phase is the compositing update. |
+ bool isInCompositingUpdate() const; |
+ |
CompositedLayerMappingPtr compositedLayerMapping() const; |
CompositedLayerMappingPtr ensureCompositedLayerMapping(); |
@@ -479,7 +482,16 @@ public: |
bool hasDirectReasonsForCompositing() const { return compositingReasons() & CompositingReasonComboAllDirectReasons; } |
+ void clearAncestorDependentPropertyCache() { m_ancestorDependentPropertyCache.clear(); } |
+ |
private: |
+ struct AncestorDependentPropertyCache { |
+ AncestorDependentPropertyCache(); |
+ RenderObject* containingBlock; |
+ RenderLayer* ancestorCompositedScrollingLayer; |
+ RenderLayer* scrollParent; |
+ }; |
+ |
bool hasOverflowControls() const; |
void setIsUnclippedDescendant(bool isUnclippedDescendant) { m_isUnclippedDescendant = isUnclippedDescendant; } |
@@ -578,7 +590,6 @@ private: |
bool shouldBeSelfPaintingLayer() const; |
-private: |
// FIXME: We should only create the stacking node if needed. |
bool requiresStackingNode() const { return true; } |
void updateStackingNode(); |
@@ -630,7 +641,6 @@ private: |
friend class RenderLayerCompositor; |
friend class RenderLayerModelObject; |
-private: |
LayerType m_layerType; |
// Self-painting layer is an optimization where we avoid the heavy RenderLayer painting |
@@ -756,6 +766,8 @@ private: |
OwnPtr<CompositedLayerMapping> m_compositedLayerMapping; |
OwnPtr<RenderLayerScrollableArea> m_scrollableArea; |
+ OwnPtr<AncestorDependentPropertyCache> m_ancestorDependentPropertyCache; |
+ |
CompositedLayerMapping* m_groupedMapping; |
RenderLayerRepainter m_repainter; |