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

Unified Diff: Source/core/rendering/compositing/CompositedLayerMapping.cpp

Issue 475553002: Squashed fixed position layers shouldn't flicker while scrolling (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 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
Index: Source/core/rendering/compositing/CompositedLayerMapping.cpp
diff --git a/Source/core/rendering/compositing/CompositedLayerMapping.cpp b/Source/core/rendering/compositing/CompositedLayerMapping.cpp
index 9e3335ed6deed3fccde6340ddb091513eddf8b8b..58f52ea084092d59e613e42bf2df644fb49f7c02 100644
--- a/Source/core/rendering/compositing/CompositedLayerMapping.cpp
+++ b/Source/core/rendering/compositing/CompositedLayerMapping.cpp
@@ -974,7 +974,7 @@ void CompositedLayerMapping::registerScrollingLayers()
// layer as a container.
bool isContainer = m_owningLayer.hasTransform() && !m_owningLayer.isRootLayer();
// FIXME: we should make certain that childForSuperLayers will never be the m_squashingContainmentLayer here
- scrollingCoordinator->setLayerIsContainerForFixedPositionLayers(localRootForOwningLayer(), isContainer);
+ scrollingCoordinator->setLayerIsContainerForFixedPositionLayers(childForSuperlayers(), isContainer);
}
void CompositedLayerMapping::updateInternalHierarchy()
@@ -1858,20 +1858,15 @@ GraphicsLayer* CompositedLayerMapping::parentForSublayers() const
return m_graphicsLayer.get();
}
-GraphicsLayer* CompositedLayerMapping::localRootForOwningLayer() const
-{
- if (m_ancestorClippingLayer)
- return m_ancestorClippingLayer.get();
-
- return m_graphicsLayer.get();
-}
-
GraphicsLayer* CompositedLayerMapping::childForSuperlayers() const
{
if (m_squashingContainmentLayer)
return m_squashingContainmentLayer.get();
- return localRootForOwningLayer();
+ if (m_ancestorClippingLayer)
+ return m_ancestorClippingLayer.get();
+
+ return m_graphicsLayer.get();
}
GraphicsLayer* CompositedLayerMapping::layerForChildrenTransform() const
@@ -1916,7 +1911,6 @@ bool CompositedLayerMapping::updateRequiresOwnBackingStoreForIntrinsicReasons()
if (paintsIntoCompositedAncestor() != previousPaintsIntoCompositedAncestor)
compositor()->repaintOnCompositingChange(&m_owningLayer);
-
return m_requiresOwnBackingStoreForIntrinsicReasons != previousRequiresOwnBackingStoreForIntrinsicReasons;
}

Powered by Google App Engine
This is Rietveld 408576698