Index: third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
diff --git a/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp b/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
index dcdb913ed6f3de401feb3c1694b0a6a6a8998cbf..f8b21db8d135f737405039e4a3f7ce22f496b32d 100644 |
--- a/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
+++ b/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
@@ -957,7 +957,8 @@ bool ScrollingCoordinator::hasVisibleSlowRepaintViewportConstrainedObjects(Frame |
for (const LayoutObject* layoutObject : *viewportConstrainedObjects) { |
ASSERT(layoutObject->isBoxModelObject() && layoutObject->hasLayer()); |
- ASSERT(layoutObject->style()->position() == FixedPosition); |
+ ASSERT(layoutObject->style()->position() == FixedPosition |
+ || layoutObject->style()->position() == StickyPosition); |
PaintLayer* layer = toLayoutBoxModelObject(layoutObject)->layer(); |
// Whether the Layer scrolls with the viewport is a tree-depenent |
@@ -1006,6 +1007,8 @@ MainThreadScrollingReasons ScrollingCoordinator::mainThreadScrollingReasons() co |
if (frameView->hasBackgroundAttachmentFixedObjects()) |
reasons |= MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects; |
+ if (frameView->hasStickyPositionObjects()) |
+ reasons |= MainThreadScrollingReason::kHasStickyPositionObjects; |
FrameView::ScrollingReasons scrollingReasons = frameView->scrollingReasons(); |
const bool mayBeScrolledByInput = (scrollingReasons == FrameView::Scrollable); |
const bool mayBeScrolledByScript = mayBeScrolledByInput || (scrollingReasons == |
@@ -1031,6 +1034,8 @@ String ScrollingCoordinator::mainThreadScrollingReasonsAsText(MainThreadScrollin |
stringBuilder.appendLiteral("Has background-attachment:fixed, "); |
if (reasons & MainThreadScrollingReason::kHasNonLayerViewportConstrainedObjects) |
stringBuilder.appendLiteral("Has non-layer viewport-constrained objects, "); |
+ if (reasons & MainThreadScrollingReason::kHasStickyPositionObjects) |
+ stringBuilder.appendLiteral("Has sticky position objects, "); |
if (reasons & MainThreadScrollingReason::kThreadedScrollingDisabled) |
stringBuilder.appendLiteral("Threaded scrolling is disabled, "); |