[Layout] Prints only first page when nested aligned/floated table is longer than a page
Categories
(Core :: Print Preview, defect, P2)
Tracking
()
People
(Reporter: petr.gajdusek, Assigned: TYLin)
References
(Regression)
Details
(Keywords: regression, Whiteboard: [frag2020_v81][layout:backlog], [wptsync upstream])
Attachments
(4 files, 3 obsolete files)
User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36 Steps to reproduce: Open attached test.html which contains a "table td > div > table[align=right]" in FF 56 or 57 beta. Open print preview. Actual results: Only first page of the table (with attribute align=right or style float: right) is printed. All pages are printed if the table has style="margin: 0 0 0 auto" or if the parent div is omitted. Expected results: All pages should be printed as in Firefox 55 and earlier.
Updated•7 years ago
|
Comment 1•7 years ago
|
||
Regression window: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=e6e712904806da25a9c8f48ea4533abe7c6ea8f4&tochange=d6bf703c5deaf1e328babd03d5e68ff2a4ffe10e Regressed by: Bug 1308876
Comment 2•7 years ago
|
||
Regression should be blocking the regressing bug rather than depending on it.
Comment 3•7 years ago
|
||
This may be a dupe of bug 1406291 I guess.
Updated•7 years ago
|
Comment 4•6 years ago
|
||
There is no need for the print media style sheet. The only relevance of that is that it makes the nested table big enough that it can't fit on a single page. It's simpler to simply add more content to the nested table to trigger the bug.
Updated•6 years ago
|
Comment 5•6 years ago
|
||
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
This is not fixed by bug 1474771, so it needs further investigation.
Assignee | ||
Comment 7•4 years ago
|
||
Many printing loss issues related to the float elements are because we
don't reflow enough to break the float elements.
nsColumnFrame::ReflowChildren() uses mMustReflowPlaceholders to force
reflow children even if the column block-size is unchanged. It's similar
when we are in a paginated context, where the page size is fixed. We
also want to force reflow children, especially for frames like
nsTableRowGroupFrame that they reflow children in unconstrained
block-size to measure total block-size, and do an incremental reflow in
constrained block-size later.
Use mMustReflowPlaceholders in ShouldReflowAllKids() because we want a
overflow container child to reflow its children (can be floats) again in
nsContainerFrame::ReflowOverflowContainerChildren() even if its not
dirty.
Updated•4 years ago
|
Comment 8•4 years ago
|
||
Tracking as potential print output fix for 81.
Assignee | ||
Comment 9•4 years ago
|
||
ReflowInputFlags is a struct of bitfields, so we cannot use AutoRestore to
restore its member bitfield.
Assignee | ||
Comment 10•4 years ago
|
||
This patch is similar to Bug 1559961 Part 2 [1]. That is, we want to reflow
an overflow container again if its scrollable overflow block-end exceeds
the available block-size constraint.
[1] https://hg.mozilla.org/mozilla-central/rev/d377ce300d0349c1b7dc562bcf5343851d36c6ed
Depends on D87629
Assignee | ||
Comment 11•4 years ago
|
||
Depends on D87630
Updated•4 years ago
|
Comment 12•4 years ago
|
||
Pushed by aethanyc@gmail.com: https://hg.mozilla.org/integration/autoland/rev/9a82bca1962a Part 1 - Make const-cast clearer in nsTableRowGroupFrame::Reflow(). r=dholbert https://hg.mozilla.org/integration/autoland/rev/ce14bf5310d1 Part 2 - Consider an overflow container's scrollable overflow when deciding whether to reflow it. r=dholbert https://hg.mozilla.org/integration/autoland/rev/fc7ac8859238 Part 3 - Add a reftest testing breaking a float in a table. r=dholbert
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/25160 for changes under testing/web-platform/tests
Comment 14•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/9a82bca1962a
https://hg.mozilla.org/mozilla-central/rev/ce14bf5310d1
https://hg.mozilla.org/mozilla-central/rev/fc7ac8859238
Upstream PR merged by moz-wptsync-bot
Updated•4 years ago
|
Updated•2 years ago
|
Description
•