| Index: Source/core/rendering/RenderLayerCompositor.h
|
| diff --git a/Source/core/rendering/RenderLayerCompositor.h b/Source/core/rendering/RenderLayerCompositor.h
|
| index a9579cba1a1ae1936d8dfe1d15da85e350d54e85..22ef3c7a7b9b324d435d9bf43344c0b085417deb 100644
|
| --- a/Source/core/rendering/RenderLayerCompositor.h
|
| +++ b/Source/core/rendering/RenderLayerCompositor.h
|
| @@ -116,7 +116,11 @@ public:
|
|
|
| // Called when something outside WebKit affects the visible rect (e.g. delegated scrolling). Might schedule a layer flush.
|
| void didChangeVisibleRect();
|
| -
|
| +
|
| + // Updating properties required for determining if compositing is necessary.
|
| + void updateCompositingRequirementsState();
|
| + void setNeedsUpdateCompositingRequirementsState() { m_needsUpdateCompositingRequirementsState = true; }
|
| +
|
| // Rebuild the tree of compositing layers
|
| void updateCompositingLayers(CompositingUpdateType, RenderLayer* updateRoot = 0);
|
|
|
| @@ -225,6 +229,9 @@ public:
|
| void updateViewportConstraintStatus(RenderLayer*);
|
| void removeViewportConstrainedLayer(RenderLayer*);
|
|
|
| + void addOutOfFlowPositionedLayer(RenderLayer*);
|
| + void removeOutOfFlowPositionedLayer(RenderLayer*);
|
| +
|
| void resetTrackedRepaintRects();
|
| void setTracksRepaints(bool);
|
|
|
| @@ -350,6 +357,7 @@ private:
|
| bool m_compositingLayersNeedRebuild;
|
| bool m_forceCompositingMode;
|
| bool m_inPostLayoutUpdate; // true when it's OK to trust layout information (e.g. layer sizes and positions)
|
| + bool m_needsUpdateCompositingRequirementsState;
|
|
|
| bool m_isTrackingRepaints; // Used for testing.
|
|
|
| @@ -362,6 +370,10 @@ private:
|
| HashSet<RenderLayer*> m_viewportConstrainedLayers;
|
| HashSet<RenderLayer*> m_viewportConstrainedLayersNeedingUpdate;
|
|
|
| + // This is used in updateCompositingRequirementsState to avoid full tree
|
| + // walks while determining if layers have unclipped descendants.
|
| + HashSet<RenderLayer*> m_outOfFlowPositionedLayers;
|
| +
|
| // Enclosing layer for overflow controls and the clipping layer
|
| OwnPtr<GraphicsLayer> m_overflowControlsHostLayer;
|
|
|
|
|