| Index: third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutBlock.cpp b/third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| index 27e2f756b675aba83d5c954abd15e7b6acbff981..4062913cbae4de8b3596f9f7deff998ee2ee13ca 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutBlock.cpp
|
| @@ -365,6 +365,9 @@ void LayoutBlock::updateFromStyle()
|
|
|
| bool shouldClipOverflow = !styleRef().isOverflowVisible() && allowsOverflowClip();
|
| if (shouldClipOverflow != hasOverflowClip()) {
|
| + if (!shouldClipOverflow)
|
| + getScrollableArea()->invalidateAllStickyConstraints();
|
| +
|
| // FIXME: This shouldn't be required if we tracked the visual overflow
|
| // generated by positioned children or self painting layers. crbug.com/345403
|
| for (LayoutObject* child = firstChild(); child; child = child->nextSibling())
|
| @@ -880,8 +883,12 @@ bool LayoutBlock::finishDelayUpdateScrollInfo(SubtreeLayoutScope* layoutScope)
|
| return childrenMarkedForRelayout;
|
| }
|
|
|
| -void LayoutBlock::updateScrollInfoAfterLayout()
|
| +void LayoutBlock::updateAfterLayout()
|
| {
|
| + invalidateStickyConstraints();
|
| +
|
| + // Update our scroll information if we're overflow:auto/scroll/hidden now that we know if
|
| + // we overflow or not.
|
| if (hasOverflowClip()) {
|
| if (style()->isFlippedBlocksWritingMode()) {
|
| // FIXME: https://bugs.webkit.org/show_bug.cgi?id=97937
|
| @@ -1124,7 +1131,7 @@ bool LayoutBlock::simplifiedLayout()
|
|
|
| updateLayerTransformAfterLayout();
|
|
|
| - updateScrollInfoAfterLayout();
|
| + updateAfterLayout();
|
|
|
| clearNeedsLayout();
|
|
|
|
|