| 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 b7ea489f47a8bfc36198b4f6a6227cd1f5bbd721..d75a3b4e4081450721abb8d5771b0a75cf71ddd3 100644
|
| --- a/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
|
| +++ b/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
|
| @@ -75,6 +75,7 @@
|
| #include "platform/scroll/ScrollAnimatorBase.h"
|
| #include "platform/scroll/ScrollbarTheme.h"
|
| #include "public/platform/Platform.h"
|
| +#include "public/platform/WebCompositorMutableProperties.h"
|
|
|
| namespace blink {
|
|
|
| @@ -1437,11 +1438,17 @@ bool PaintLayerScrollableArea::usesCompositedScrolling() const
|
|
|
| static bool layerNeedsCompositedScrolling(PaintLayerScrollableArea::LCDTextMode mode, const PaintLayer* layer)
|
| {
|
| + if (!layer->scrollsOverflow())
|
| + return false;
|
| +
|
| + Node* node = layer->enclosingElement();
|
| + if (node && node->isElementNode() && (toElement(node)->mutableProperties() & (WebCompositorMutablePropertyScrollTop | WebCompositorMutablePropertyScrollLeft)))
|
| + return true;
|
| +
|
| if (mode == PaintLayerScrollableArea::ConsiderLCDText && !layer->compositor()->preferCompositingToLCDTextEnabled())
|
| return false;
|
|
|
| - return layer->scrollsOverflow()
|
| - && !layer->hasDescendantWithClipPath()
|
| + return !layer->hasDescendantWithClipPath()
|
| && !layer->hasAncestorWithClipPath()
|
| && !layer->layoutObject()->style()->hasBorderRadius();
|
| }
|
|
|