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 84744848cfe370946fd1b638d8113ee47e8be747..5fe8ac8b06195f684f1156302501f370ad876a9f 100644 |
--- a/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
+++ b/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
@@ -988,7 +988,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 |
@@ -1037,6 +1038,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 == |
@@ -1062,6 +1065,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, "); |