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

Unified Diff: Source/core/rendering/RenderLayer.cpp

Issue 26110004: Defer the real work in updateCompositingLayers until it's really needed. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: almost there Created 7 years, 2 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/RenderLayer.cpp
diff --git a/Source/core/rendering/RenderLayer.cpp b/Source/core/rendering/RenderLayer.cpp
index 2dcfcb143440260a5a7b2eb8ab6423ffb46c79f1..1d75a7fe37fbbde2c761f0f62166ff0d2f335d1f 100644
--- a/Source/core/rendering/RenderLayer.cpp
+++ b/Source/core/rendering/RenderLayer.cpp
@@ -701,20 +701,6 @@ void RenderLayer::updateLayerPositionsAfterScroll(RenderGeometryMap* geometryMap
geometryMap->popMappingsToAncestor(parent());
}
-void RenderLayer::positionNewlyCreatedOverflowControls()
-{
- if (!compositedLayerMapping()->hasUnpositionedOverflowControlsLayers())
- return;
-
- RenderGeometryMap geometryMap(UseTransforms);
- RenderView* view = renderer()->view();
- if (this != view->layer() && parent())
- geometryMap.pushMappingsToAncestor(parent(), 0);
-
- LayoutPoint offsetFromRoot = LayoutPoint(geometryMap.absolutePoint(FloatPoint()));
- positionOverflowControls(toIntSize(roundedIntPoint(offsetFromRoot)));
-}
-
bool RenderLayer::hasBlendMode() const
{
return RuntimeEnabledFeatures::cssCompositingEnabled() && renderer()->hasBlendMode();
@@ -2041,7 +2027,7 @@ void RenderLayer::didUpdateNeedsCompositedScrolling()
dirtyStackingContainerZOrderLists();
- compositor()->setShouldReevaluateCompositingAfterLayout();
+ compositor()->setNeedsToRecomputeCompositingRequirements();
compositor()->setCompositingLayersNeedRebuild();
}
@@ -4566,7 +4552,7 @@ void RenderLayer::dirtyZOrderLists()
compositor()->setNeedsUpdateCompositingRequirementsState();
compositor()->setCompositingLayersNeedRebuild();
if (acceleratedCompositingForOverflowScrollEnabled())
- compositor()->setShouldReevaluateCompositingAfterLayout();
+ compositor()->setNeedsToRecomputeCompositingRequirements();
}
}
@@ -4603,7 +4589,7 @@ void RenderLayer::dirtyNormalFlowList()
if (!renderer()->documentBeingDestroyed()) {
compositor()->setCompositingLayersNeedRebuild();
if (acceleratedCompositingForOverflowScrollEnabled())
- compositor()->setShouldReevaluateCompositingAfterLayout();
+ compositor()->setNeedsToRecomputeCompositingRequirements();
}
}
@@ -5355,6 +5341,17 @@ IntRect RenderLayer::scrollCornerAndResizerRect() const
return m_scrollableArea->scrollCornerAndResizerRect();
}
+void RenderLayer::positionOverflowControls()
+{
+ RenderGeometryMap geometryMap(UseTransforms);
+ RenderView* view = renderer()->view();
+ if (this != view->layer() && parent())
+ geometryMap.pushMappingsToAncestor(parent(), 0);
+
+ LayoutPoint offsetFromRoot = LayoutPoint(geometryMap.absolutePoint(FloatPoint()));
+ positionOverflowControls(toIntSize(roundedIntPoint(offsetFromRoot)));
+}
+
void RenderLayer::positionOverflowControls(const IntSize& offsetFromRoot)
{
if (m_scrollableArea)

Powered by Google App Engine
This is Rietveld 408576698