[webkit-changes] [WebKit/WebKit] b489a0: [IFC][Float] Overflowing (and suspended) float may...

Alan Baradlay noreply at github.com
Tue Dec 3 05:12:31 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b489a0bd326940674bad77695eacd6df984185a6
      https://github.com/WebKit/WebKit/commit/b489a0bd326940674bad77695eacd6df984185a6
  Author: Alan Baradlay <zalan at apple.com>
  Date:   2024-12-03 (Tue, 03 Dec 2024)

  Changed paths:
    A LayoutTests/fast/block/float/float-with-shape-and-overflowing-assert-expected.txt
    A LayoutTests/fast/block/float/float-with-shape-and-overflowing-assert.html
    M Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp

  Log Message:
  -----------
  [IFC][Float] Overflowing (and suspended) float may trigger ASSERT when other (shape-outside) floats are present
https://bugs.webkit.org/show_bug.cgi?id=283957
<rdar://136249639>

Reviewed by Antti Koivisto.

1. If a float does not fit the current line we suspend float layout and continue with inline content only,
until after we run out of available space.
2. When starting on the subsequent line, we look at the suspended float list and try to fit them first.
3. Due to (already placed) intrusive floats on this new line position, we may not be able to place any of these suspended floats.

In such cases we should give a hint what the next line's top position should be.

* LayoutTests/fast/block/float/float-with-shape-and-overflowing-assert-expected.txt: Added.
* LayoutTests/fast/block/float/float-with-shape-and-overflowing-assert.html: Added.
* Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::LineBuilder::placeInlineAndFloatContent):

Canonical link: https://commits.webkit.org/287275@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list