Bug 258372

Summary: Ensure that percent height children use right value for transformed table parts
Product: WebKit Reporter: Ahmad Saleem <ahmad.saleem792>
Component: Layout and RenderingAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: bfulgham, karlcow, simon.fraser, webkit-bug-importer, zalan
Priority: P2 Keywords: BrowserCompat, InRadar, WPTImpact
Version: Safari Technology Preview   
Hardware: Unspecified   
OS: Unspecified   
URL: http://wpt.live/css/css-transforms/transform-transformed-tr-percent-height-child.html
See Also: https://bugs.webkit.org/show_bug.cgi?id=245496
https://bugs.webkit.org/show_bug.cgi?id=260780

Description Ahmad Saleem 2023-06-21 15:18:32 PDT
Hi Team,

While looking for failing WPT tests from Interop 2021, I came across following failing test (in URL field) and noticed, it was fixed by following Blink Commit:

Blink Commit: https://chromium.googlesource.com/chromium/src.git/+/420ffd70631b3694288f1d9999e1b01a8fabbfca

When applying similar in WebKit Source: https://github.com/WebKit/WebKit/blob/d192a99af4640e4cd76b5429214f29252f2fa590/Source/WebCore/rendering/RenderBox.cpp#L3835

Changing from:

const RenderBlock& cb = is<RenderBlock>(containingBlock) ? downcast<RenderBlock>(containingBlock) : *containingBlock.containingBlock();

to:

const RenderBox& cb = downcast<RenderBox>(containingBlock);

Fix the failing test similar to Blink.

_____________

any input or approach concern, or I can do PR?

Thanks!
Comment 1 Karl Dubost 2023-06-21 19:29:02 PDT
Does that make fail new tests?
Create a PR and ask for a review.
Comment 2 Ahmad Saleem 2023-06-22 02:42:53 PDT
PR (Draft) - https://github.com/WebKit/WebKit/pull/15185
Comment 3 Radar WebKit Bug Importer 2023-06-28 15:19:17 PDT
<rdar://problem/111475324>
Comment 4 Ahmad Saleem 2024-07-23 13:36:59 PDT
Now it needs three changes:

const auto& cb = dynamicDowncast<RenderBox>(containingBlock);
        LayoutUnit result = cb->clientLogicalHeight();

and also delete unused `containingBlockAsRenderBlock`.