Closed Bug 1754598 Opened 3 years ago Closed 3 years ago

Block frame with definite block-size requests extra continuation of zero block-size in a small block-size multicol

Categories

(Core :: Layout, defect)

defect

Tracking

()

RESOLVED FIXED
99 Branch
Tracking Status
firefox99 --- fixed

People

(Reporter: TYLin, Assigned: TYLin)

References

Details

Attachments

(3 files)

Attached file testcase 1

See the attached testcase 1.

In a multicol container with a very small block-size, there is a simple unbreakable block with a definite block-size. We create an extra continuation even if it runs out of its block-size in the first column. It's invisible unless the unbreakable has outline for example.

I suspect we use a wrong nsReflowStatus in nsBlockFrame::ComputeFinalBSize.
https://searchfox.org/mozilla-central/rev/c12a59323ee46b29b90c9917a3a7a70ea714ffec/layout/generic/nsBlockFrame.cpp#7764-7784

Flags: needinfo?(aethanyc)

ComputeFinalBSize() gets most of its input parameters from BlockReflowInput's
members. Passing BlockReflowInput into it directly so that it can access more
precomputed data in BlockReflowInput such as ContentBEnd().

This is a preparation for the next part that is going to rewrite a large portion
of ComputeFinalBSize().

The code at the end of ComputeFinalBSize() does not handle
"box-decoration-break:clone" and the cases where the block frame's reflow status
can change from incomplete to complete. This patch is an attempt to fix all the
possible scenarios.

Depends on D138966

Assignee: nobody → aethanyc
Status: NEW → ASSIGNED
Flags: needinfo?(aethanyc)
Blocks: 1693616
Pushed by aethanyc@gmail.com: https://hg.mozilla.org/integration/autoland/rev/049e60e0ba2c Part 1 - Pass BlockReflowInput into nsBlockFrame::ComputeFinalBSize(). r=dholbert https://hg.mozilla.org/integration/autoland/rev/bde7633d8c5c Part 2 - Fix block frame's block-size and reflow status in ComputeFinalBSize(). r=dholbert
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/32912 for changes under testing/web-platform/tests
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 99 Branch
Upstream PR merged by moz-wptsync-bot
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: