Add measuring reflow in printing scenario for fragmentainer-aware abspos positioning
Categories
(Core :: Layout: Positioned, task)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox150 | --- | fixed |
People
(Reporter: TYLin, Assigned: TYLin)
References
(Blocks 1 open bug)
Details
(Whiteboard: [anchorpositioning:2026])
Attachments
(2 files)
Bug 1994346 added measuring reflow logic in nsColumnSetFrame to compute the unfragmented positions of absolutely positioned descendants in multicol contexts. This is needed for fragmentainer-aware positioning to determine whether an abspos first-in-flow needs to be pushed to the next fragmentainer continuation.
We need similar logic for printing scenario, which may be added in PageSequenceFrame::Reflow().
| Assignee | ||
Updated•8 months ago
|
| Assignee | ||
Updated•8 months ago
|
| Assignee | ||
Comment 1•7 months ago
|
||
This renames the measuring reflow flag to use "fragmentainer" terminology,
making it applicable to both multicol and printing contexts. This doesn't change
behavior.
Updated•7 months ago
|
| Assignee | ||
Comment 2•7 months ago
|
||
This extends the measuring reflow mechanism from multicol (Bug 1994346) to
printing scenarios. When absolutely positioned elements exists, we now perform
an initial measuring reflow with an unconstrained page height to compute
unfragmented positions, sizes, etc.
Each frame type (nsPageSequenceFrame, nsPageFrame, PrintedSheetFrame,
nsPageContentFrame) has their own logic to calculate the available size for its
child, and they do not derived the size its own reflow input's available size.
To avoid substantial refactoring, this patch checks
mIsInFragmentainerMeasuringReflow and overrides the available block-size to
unconstrained when running a measuring reflow.
Comment 5•7 months ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/5c6ab63f61dd
https://hg.mozilla.org/mozilla-central/rev/94b404c5c152
Updated•6 months ago
|
Description
•