Chromium Code Reviews| 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 29ab883ec348664c08b3a50d519bcd217cdea14f..12973f21307941c0d0f9db9ea99c55999efa9366 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 { |
| @@ -1381,11 +1382,17 @@ bool PaintLayerScrollableArea::usesCompositedScrolling() const |
| static bool layerNeedsCompositedScrolling(PaintLayerScrollableArea::LCDTextMode mode, const PaintLayer* layer) |
| { |
| + if (!layer->scrollsOverflow()) |
| + return false; |
| + |
| + Node* node = layer->enclosingElement(); |
|
esprehn
2015/12/02 03:28:49
heh, enclosingElement needs to be renamed enclosin
Ian Vollick
2015/12/03 17:54:43
Sounds good. Here's a cleanup cl for that: https:/
Ian Vollick
2015/12/03 22:33:02
enclosingNode been landed and I've rebased this ch
|
| + if (node && node->isElementNode() && (toElement(node)->compositorMutableProperties() & (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(); |
| } |