[webkit-changes] [WebKit/WebKit] 47b7f1: Fix inline-block abspos bug
Ahmad Saleem
noreply at github.com
Thu Mar 23 16:08:09 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 47b7f1121f2edcadb0294aa318e0b8ef082b312c
https://github.com/WebKit/WebKit/commit/47b7f1121f2edcadb0294aa318e0b8ef082b312c
Author: Ahmad Saleem <ahmad.saleem792+github at gmail.com>
Date: 2023-03-23 (Thu, 23 Mar 2023)
Changed paths:
A LayoutTests/fast/block/bug369123-expected.html
A LayoutTests/fast/block/bug369123.html
M Source/WebCore/rendering/RenderLayerModelObject.cpp
Log Message:
-----------
Fix inline-block abspos bug
https://bugs.webkit.org/show_bug.cgi?id=249391
Reviewed by Alan Baradlay.
This patch aligns WebKit with Blink / Chromium and Gecko / Firefox.
Merge - https://chromium.googlesource.com/chromium/blink/+/b1dbd0d86f09b9dccd410d1d106c76f029fa5b48
When an out-of-flow-positioned element changes its display between block and
inline-block, then an incremental layout on the element's containing block lays
out the element through LayoutPositionedObjects, which skips laying out the
element's parent. The element's parent needs to relayout so that it calls
RenderBlockFlow::setStaticInlinePositionForChild with the out-of-flow-positioned
child, so that when it's laid out, its
RenderBox::computePositionedLogicalWidth/Height takes into account its new
inline/block position rather than its old block/inline position.
* Source/WebCore/rendering/RenderLayerModelObject.cpp:
(RenderLayerModelObject::styleDidChange):
* LayoutTests/fast/block/bug369123.html: Add Test Case
* LayoutTests/fast/block/bug369123-expected.html: Add Test Case Expectation
Canonical link: https://commits.webkit.org/262042@main
More information about the webkit-changes
mailing list