RESOLVED FIXED 269763
Ensure cell's replaced content doesn't get the wrong width
https://bugs.webkit.org/show_bug.cgi?id=269763
Summary Ensure cell's replaced content doesn't get the wrong width
Ahmad Saleem
Reported 2024-02-19 16:39:33 PST
Hi Team, While going through Blink's commit, I came across another failing test case. Test Case: https://jsfiddle.net/md6j97ar/show Safari Technology Preview 188 and Firefox Nightly 125 also fails this test. Only Chrome Canary 123 is passing this. Blink Commit: https://chromium.googlesource.com/chromium/src.git/+/03d66d9ce1e602df26a9d544d9258a88b9194349 WebKit Source: https://searchfox.org/wubkat/rev/74c0aa4209e14edf714b16d023ac838b718120f8/Source/WebCore/rendering/RenderTableCell.cpp#201 Below compiles and make us progress this test: ___ // We don't want the preferred width from children to be affected by any // notional height on the cell, such as can happen when a percent sized image // scales up its width to match the available height. Setting a zero override // height prevents this from happening. LayoutUnit contentHeight = hasOverridingLogicalHeight() ? overridingLogicalHeight() : LayoutUnit(-1); if (contentHeight > -1) setOverridingLogicalHeight(LayoutUnit()); RenderBlockFlow::computePreferredLogicalWidths(); if (contentHeight > -1) setOverridingLogicalHeight(contentHeight); ___ Just wanted to raise so we can fix it. Please share any input. Thanks!
Attachments
rendering in safari, firefox, chrome (296.71 KB, image/png)
2024-02-21 04:35 PST, Karl Dubost
no flags
Karl Dubost
Comment 2 2024-02-21 04:35:24 PST
Created attachment 469999 [details] rendering in safari, firefox, chrome None of the 4 browsers return the same results for the test. Safari Technology Preview 188 19619.1.2.1.1 Firefox Nightly 125.0a1 12524.2.20 Google Chrome Canary 123.0.6312.2 6312.2 So there might be something deeper to explore here.
Radar WebKit Bug Importer
Comment 3 2024-02-26 16:40:16 PST
Ahmad Saleem
Comment 4 2024-12-25 18:53:24 PST
std::optional<LayoutUnit> contentHeight = this->overridingLogicalHeight(); if (contentHeight > -1) setOverridingLogicalHeight(0_lu); RenderBlockFlow::computePreferredLogicalWidths(); if (contentHeight > -1) setOverridingLogicalHeight(*contentHeight);
Ahmad Saleem
Comment 5 2024-12-25 19:22:07 PST
EWS
Comment 6 2024-12-27 15:54:55 PST
Committed 288316@main (0b242bd08948): <https://commits.webkit.org/288316@main> Reviewed commits have been landed. Closing PR #38376 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.