| Index: third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
|
| diff --git a/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp b/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
|
| index 9a11c12539444ff9e77ed2f7389253e964c8bef3..5e522cacd123a394575b961d1cb17bc1872c9254 100644
|
| --- a/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
|
| +++ b/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
|
| @@ -1497,11 +1497,9 @@ static bool layerNeedsCompositedScrolling(PaintLayerScrollableArea::LCDTextMode
|
| if (node && node->isElementNode() && (toElement(node)->compositorMutableProperties() & (CompositorMutableProperty::kScrollTop | CompositorMutableProperty::kScrollLeft)))
|
| return true;
|
|
|
| - // TODO(schenney) The color test alone is inadequate. When https://codereview.chromium.org/2196583002 lands
|
| - // we should use PaintLayer::shouldPaintBackgroundOntoForeground() because we will not still get
|
| - // LCD text unless the conditions there are met. It also unifies logic for scrolling compositing decisions.
|
| bool backgroundSupportsLCDText = RuntimeEnabledFeatures::compositeOpaqueScrollersEnabled()
|
| - && !layer->layoutObject()->style()->visitedDependentColor(CSSPropertyBackgroundColor).hasAlpha();
|
| + && layer->shouldPaintBackgroundOntoScrollingContentsLayer()
|
| + && layer->backgroundIsKnownToBeOpaqueInRect(toLayoutBox(layer->layoutObject())->paddingBoxRect());
|
| if (mode == PaintLayerScrollableArea::ConsiderLCDText
|
| && !layer->compositor()->preferCompositingToLCDTextEnabled()
|
| && !backgroundSupportsLCDText)
|
|
|