Closed Bug 145305 Opened 21 years ago Closed 21 years ago

Floaters don't split when printing

Categories

(Core :: Layout, defect, P2)

defect

Tracking

()

VERIFIED FIXED
mozilla1.0.1

People

(Reporter: karnaze, Assigned: karnaze)

References

()

Details

(Keywords: testcase, Whiteboard: [FIXED_ON_TRUNK])

Attachments

(23 files, 1 obsolete file)

48.47 KB, image/jpeg
Details
243 bytes, text/html
Details
245 bytes, text/html
Details
218 bytes, text/html
Details
220 bytes, text/html
Details
363 bytes, text/html
Details
366 bytes, text/html
Details
297 bytes, text/html
Details
786 bytes, text/html
Details
758 bytes, text/html
Details
789 bytes, text/html
Details
761 bytes, text/html
Details
922 bytes, text/html
Details
857 bytes, text/html
Details
1.49 KB, text/html
Details
1.68 KB, text/html
Details
1.53 KB, text/html
Details
1.51 KB, text/html
Details
317 bytes, text/html
Details
843 bytes, text/html
Details
1.57 KB, text/html
Details
1.59 KB, text/html
Details
80.40 KB, patch
karnaze
: review+
karnaze
: superreview+
Details | Diff | Splinter Review
The block and inline code does not split floaters. We also have hacks in 
html.css to not honor align=left,right on tables to avoid the data loss from not 
being able to split floaters.
Severity: normal → major
Status: NEW → ASSIGNED
Priority: -- → P2
Target Milestone: --- → mozilla1.0.1
Attached image raptor jpg
It will be fairly easy to make positioned elements split after landing this 
patch. I'll open another bug for that.
-  if (nsLayoutAtoms::textFrame == frameType) {
+  if (nsLayoutAtoms::textFrame == frameType.get()) {

There are many changes in your patch like that. I don't think you need the
.get() any longer...
*** Bug 144300 has been marked as a duplicate of this bug. ***
Comment on attachment 84290 [details] [diff] [review]
wip patch that fixes the url and test cases

>-        if (NS_FAILED(rv)) {
>-          return rv;
>-        }
>+        if (NS_FAILED(rv)) return rv;

Please don't make changes of this form.  They make it
impossible to set breakpoints on the early return.
They also tend to hide the early return, which is bad
both since some error checking is unnecessary or
incorrect (using early returns when the error should
be handled in some way or ignored) and since early
returns should be easily visible since we tend not to
manage things that need to be cleaned up before return
(e.g., freeing objects (except nsCOMPtr usage), reverse
translations, popping state) using destructors (i.e.,
we're nowhere near exception-safe).
Merging keywords and platform from bug 144300.
Keywords: nsbeta1
OS: Windows 2000 → All
Hardware: PC → All
nsbeta1-. The fix for this will be too risky to make it on to the branch.
Keywords: nsbeta1nsbeta1-
Keywords: testcase
Comment on attachment 84290 [details] [diff] [review]
wip patch that fixes the url and test cases

Hey, this looks pretty nice Chris! You have to remove some stuff that is not
suppossed to be in there (bug139524 and the TableColFrame stuff) and also
waterson's changes for TableOuterFrame, as we discussed. Finally, the
SVGOuterSVGFrame change is wrong, the status will be overwritten and SVG frames
won't be able to indicate they are truncated - horrors!

This turned out to be pretty straightforward, sr=attinasi
Attachment #84290 - Flags: superreview+
Comment on attachment 84290 [details] [diff] [review]
wip patch that fixes the url and test cases

r= alexsavulov

great job! way to go dude!:-)
Attachment #84290 - Flags: review+
Attachment #84290 - Attachment is obsolete: true
Attachment #85325 - Flags: superreview+
Attachment #85325 - Flags: review+
This check-in have added a warning:

+layout/html/style/src/nsCSSFrameConstructor.cpp:11577
+ `nsresult rv' might be used uninitialized in this function
FIXED_ON_TRUNK. I'll fix the warning with my next checkin to 
nsCSSFrameConstructor.cpp.
Status: ASSIGNED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Whiteboard: [FIXED_ON_TRUNK]
Bug 148399, comment 8 suggests, that bug 148399 is caused by this patch here.
Possibly, bug 149364 is the same problem.

I'd higly appreciate if you could look into this issue. TIA

pi
Bug 148399, comment 8 says, that it is caused by this patch here.
Bug 149364, comment 16 says, that it is caused by this patch here.

So I mark both bugs as being blocked by this here.

pi
Blocks: 148399, 149364
Blocks: 148245
Blocks: 134094
Blocks: 155970
Verified in the Windows ME (2002-08-19-08) and Mac OSX (2002-08-19-05) TRUNK builds.
Status: RESOLVED → VERIFIED
Blocks: 163614
Blocks: 85768
You need to log in before you can comment on or make changes to this bug.