Changeset 271053 in webkit
- Timestamp:
- Dec 22, 2020 8:09:03 AM (19 months ago)
- Location:
- trunk
- Files:
-
- 2 added
- 3 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/fast/flexbox/preserve-layout-overflow-expected.txt (added)
-
LayoutTests/fast/flexbox/preserve-layout-overflow.html (added)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/rendering/RenderBlock.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r271048 r271053 1 2020-12-22 Simon Fraser <simon.fraser@apple.com> 2 3 Layout overflow is computed incorrectly inside flexbox (breaks sticky positioning) 4 https://bugs.webkit.org/show_bug.cgi?id=220075 5 6 Reviewed by Zalan Bujtas. 7 8 * fast/flexbox/preserve-layout-overflow-expected.txt: Added. 9 * fast/flexbox/preserve-layout-overflow.html: Added. 10 1 11 2020-12-21 Beth Dakin <bdakin@apple.com> 2 12 -
trunk/Source/WebCore/ChangeLog
r271052 r271053 1 2020-12-22 Simon Fraser <simon.fraser@apple.com> 2 3 Layout overflow is computed incorrectly inside flexbox (breaks sticky positioning) 4 https://bugs.webkit.org/show_bug.cgi?id=220075 5 <rdar://problem/70956639> 6 7 Reviewed by Zalan Bujtas. 8 9 RenderBlock::endAndCommitUpdateScrollInfoAfterLayoutTransaction(), which is only called by grid 10 and flexbox layout, would unconditionally clear layout overflow on boxes with overflow clipping, 11 which resulted in incorrect sticky positioning because RenderBoxModelObject::computeStickyPositionConstraints() 12 consults layout overflow. 13 14 It was only through happenstance that overflow:scroll worked correctly, relying on the fact 15 that updateScrollInfoAfterLayout() would trigger caching of scroll dimensions on RenderLayer. 16 17 This clearing was added in r151360 but seems incorrect; layout overflow should be preserved 18 after layout. 19 20 Test: fast/flexbox/preserve-layout-overflow.html 21 22 * rendering/RenderBlock.cpp: 23 (WebCore::RenderBlock::endAndCommitUpdateScrollInfoAfterLayoutTransaction): 24 1 25 2020-12-22 Zalan Bujtas <zalan@apple.com> 2 26 -
trunk/Source/WebCore/rendering/RenderBlock.cpp
r271003 r271053 555 555 ASSERT(block->hasOverflowClip()); 556 556 block->layer()->updateScrollInfoAfterLayout(); 557 block->clearLayoutOverflow();558 557 } 559 558 }
Note: See TracChangeset
for help on using the changeset viewer.