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

Unified Diff: Source/core/rendering/compositing/RenderLayerCompositor.h

Issue 208313004: Cache the absolute bounding box rect on RenderLayer. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: add fixme Created 6 years, 9 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
Index: Source/core/rendering/compositing/RenderLayerCompositor.h
diff --git a/Source/core/rendering/compositing/RenderLayerCompositor.h b/Source/core/rendering/compositing/RenderLayerCompositor.h
index e04c4b203d1649036d1a94ca17b62759b5c23443..ebe4f8a4c42ba63fb16494160b0f99ebe19ccff6 100644
--- a/Source/core/rendering/compositing/RenderLayerCompositor.h
+++ b/Source/core/rendering/compositing/RenderLayerCompositor.h
@@ -62,6 +62,11 @@ enum CompositingUpdateType {
class RenderLayerCompositor FINAL : public GraphicsLayerClient {
WTF_MAKE_FAST_ALLOCATED;
public:
+ enum BoundsUpdateType {
+ DoNotForceUpdate,
+ ForceUpdate,
+ };
+
// FIXME: This constructor should take a reference.
explicit RenderLayerCompositor(RenderView&);
virtual ~RenderLayerCompositor();
@@ -266,7 +271,7 @@ private:
void recursiveRepaintLayer(RenderLayer*);
- void addToOverlapMap(OverlapMap&, RenderLayer*, IntRect& layerBounds);
+ void addToOverlapMap(OverlapMap&, RenderLayer*, const IntRect& layerBounds);
// Forces an update for all frames of frame tree recursively. Used only when the mainFrame compositor is ready to
// finish all deferred work.
@@ -343,6 +348,9 @@ private:
bool m_needsToUpdateLayerTreeGeometry;
GraphicsLayerUpdater::UpdateType m_pendingUpdateType;
+ RenderLayerCompositor::BoundsUpdateType m_recomputeLayerBoundsUpdateType;
+
+ bool m_canUseCachedLayerBoundingBoxes;
bool m_compositing;
bool m_compositingLayersNeedRebuild;
bool m_forceCompositingMode;

Powered by Google App Engine
This is Rietveld 408576698