[Webkit-unassigned] [Bug 272280] New: Avoid over-eager clipping of child layers in multicolumn

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Apr 6 10:58:39 PDT 2024


https://bugs.webkit.org/show_bug.cgi?id=272280

            Bug ID: 272280
           Summary: Avoid over-eager clipping of child layers in
                    multicolumn
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Keywords: BrowserCompat
          Severity: Normal
          Priority: P2
         Component: Layout and Rendering
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: ahmad.saleem792 at gmail.com
                CC: bfulgham at webkit.org, simon.fraser at apple.com,
                    zalan at apple.com

Hi Team,

While going through Blink's commit, I came across another failing test:

Test Case: https://jsfiddle.net/z8d5auqe/show

^ Safari 17.4.1 fails it while Chrome Canary 125 and Firefox Nightly 126 matches each other.

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

WebKit Source: https://searchfox.org/wubkat/source/Source/WebCore/rendering/RenderFragmentContainer.cpp#154

___

This compiles and fix this above test case:

LayoutRect RenderFragmentContainer::overflowRectForFragmentedFlowPortion(const LayoutRect& fragmentedFlowPortionRect, bool isFirstPortion, bool isLastPortion) const
{
    ASSERT(isValid());
    // Only clip along the block direction axis.
    LayoutRect clipRect(LayoutRect::infiniteRect());

    if (m_fragmentedFlow->isHorizontalWritingMode()) {
        if (!isFirstPortion)
            clipRect.shiftYEdgeTo(fragmentedFlowPortionRect.y());
        if (!isLastPortion)
            clipRect.shiftMaxYEdgeTo(fragmentedFlowPortionRect.maxY());
        return clipRect;
    }

    if (!isFirstPortion)
        clipRect.shiftYEdgeTo(fragmentedFlowPortionRect.x());
    if (!isLastPortion)
        clipRect.shiftMaxYEdgeTo(fragmentedFlowPortionRect.maxX());
    return clipRect;
}

_____

NOTE - I have ran both 'WPT' (CSS-Contain) and (CSS-MULTICOL) and no progression and regressions.

Just raising so we can track and fix it.

Thanks!

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20240406/4995ad52/attachment.htm>


More information about the webkit-unassigned mailing list