Chromium Code Reviews| Index: third_party/WebKit/Source/core/paint/PaintLayer.cpp |
| diff --git a/third_party/WebKit/Source/core/paint/PaintLayer.cpp b/third_party/WebKit/Source/core/paint/PaintLayer.cpp |
| index 168383e4077bc5da12b3a5d8b84841d30bb4efcc..4a6fc138a15b867a7b26faed424d4fbc1141562f 100644 |
| --- a/third_party/WebKit/Source/core/paint/PaintLayer.cpp |
| +++ b/third_party/WebKit/Source/core/paint/PaintLayer.cpp |
| @@ -2624,10 +2624,13 @@ GraphicsLayer* PaintLayer::graphicsLayerBacking(const LayoutObject* obj) const { |
| BackgroundPaintLocation PaintLayer::backgroundPaintLocation( |
| uint32_t* reasons) const { |
| - BackgroundPaintLocation location = |
| - isRootLayer() || !scrollsOverflow() |
| - ? BackgroundPaintInGraphicsLayer |
| - : layoutObject()->backgroundPaintLocation(reasons); |
| + BackgroundPaintLocation location = BackgroundPaintInGraphicsLayer; |
| + if (scrollsOverflow()) { |
| + if (RuntimeEnabledFeatures::rootLayerScrollingEnabled() || !isRootLayer()) { |
|
flackr
2017/01/26 00:03:16
I wonder if this check is really necessary? The sc
|
| + location = layoutObject()->backgroundPaintLocation(reasons); |
| + } |
| + } |
| + |
| m_stackingNode->updateLayerListsIfNeeded(); |
| if (m_stackingNode->hasNegativeZOrderList()) |
| location = BackgroundPaintInGraphicsLayer; |
|
flackr
2017/01/26 00:03:16
This seems wrong, do we actually create a layer be
|