Bug 254183 - Let siblings layout if an adjacent float may no longer affect them
Summary: Let siblings layout if an adjacent float may no longer affect them
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: Safari Technology Preview
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: zalan
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2023-03-20 14:15 PDT by Ahmad Saleem
Modified: 2023-04-01 10:04 PDT (History)
11 users (show)

See Also:


Attachments
[fast-cq]Patch (4.07 KB, patch)
2023-04-01 07:08 PDT, zalan
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ahmad Saleem 2023-03-20 14:15:10 PDT
Hi Team,

While going through Blink's commit, I came across another potential merge and bug fix.

Blink Commit - https://chromium.googlesource.com/chromium/src.git/+/789b5e528fb3bd9ca44341de46547c45355652ab

Test Case - https://jsfiddle.net/kqj93hp5/show

^ Failing in Safari Technology Preview 165, passes after adding following in WebKit Source:

        fb = std::max(fb, childBlockFlow->lowestFloatLogicalBottom());

In WebKit Source after this as L969:

https://searchfox.org/wubkat/source/Source/WebCore/rendering/RenderBlockFlow.cpp#968

Just wanted to raise so we can fix it.

Thanks!
Comment 1 Ahmad Saleem 2023-03-20 16:25:50 PDT
(In reply to Ahmad Saleem from comment #0)
> Hi Team,
> 
> While going through Blink's commit, I came across another potential merge
> and bug fix.
> 
> Blink Commit -
> https://chromium.googlesource.com/chromium/src.git/+/
> 789b5e528fb3bd9ca44341de46547c45355652ab
> 
> Test Case - https://jsfiddle.net/kqj93hp5/show
> 
> ^ Failing in Safari Technology Preview 165, passes after adding following in
> WebKit Source:
> 
>         fb = std::max(fb, childBlockFlow->lowestFloatLogicalBottom());
> 
> In WebKit Source after this as L969:
> 
> https://searchfox.org/wubkat/source/Source/WebCore/rendering/RenderBlockFlow.
> cpp#968
> 
> Just wanted to raise so we can fix it.
> 
> Thanks!

Merging this as it is, led to crashes in my local build (It happened when I try to looked into old bugs with 'negative margin' reference to see, if they are now fixed with this or not.

Additionally, then I took the patch reference to search whether there is any follow-up on Chromium / Blink and noticed that it had regression in performance test and got superseded by this:

https://chromium.googlesource.com/chromium/src.git/+/4a961b8eca27af4108358a30753197754316524b
Comment 2 Radar WebKit Bug Importer 2023-03-27 14:16:17 PDT
<rdar://problem/107283741>
Comment 3 zalan 2023-04-01 07:08:54 PDT
Created attachment 465729 [details]
[fast-cq]Patch
Comment 4 zalan 2023-04-01 07:10:32 PDT
Different approach as I am not convinced that the blink patch is correct.
Comment 5 EWS 2023-04-01 10:04:02 PDT
Committed 262481@main (5673db1ac5ba): <https://commits.webkit.org/262481@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 465729 [details].