Closed
Bug 253977
Opened 20 years ago
Closed 20 years ago
More block bugs flushed out by columns work
Categories
(Core :: Layout, defect)
Core
Layout
Tracking
()
RESOLVED
FIXED
People
(Reporter: roc, Assigned: roc)
Details
Attachments
(1 file, 1 obsolete file)
16.67 KB,
patch
|
dbaron
:
review+
dbaron
:
superreview+
|
Details | Diff | Splinter Review |
Here are some bugs that I found that I have fixes for. -- nsBlockFrame::Reflow should always call DrainOverflowLines no matter what the type of reflow. It is never correct to leave a prev-in-flow with an overflow line list. -- I need a way to determine if incrementally reflowing a block frame did something that requires its next in flow to be reflowed. According to nsIFrame.h, NS_FRAME_REFLOW_NEXTINFLOW should be added to the outgoing reflow status to indicate this. However, that isn't currently implemented. So I've implemented it, at least for blocks. -- nsBlockFrame::DoRemoveFrame did not handle the case where the frame to be removed, or some of its continuations, are on the overflow line list. So I have it search both the normal and overflow lines. I also simplified it a bit by removing the outer while loop and turning it into a recursive tail call. I've also included a little bit of frame dump code that ought to migrate from my tree to the trunk.
Assignee | ||
Comment 1•20 years ago
|
||
As described.
Assignee | ||
Updated•20 years ago
|
Attachment #154964 -
Flags: superreview?(dbaron)
Attachment #154964 -
Flags: review?(dbaron)
Assignee | ||
Comment 2•20 years ago
|
||
That last patch did not correctly reset prevSibling when we start deleting continuations in the overflow lines.
Assignee | ||
Updated•20 years ago
|
Attachment #154981 -
Flags: superreview?(dbaron)
Attachment #154981 -
Flags: review?(dbaron)
Assignee | ||
Updated•20 years ago
|
Attachment #154964 -
Flags: superreview?(dbaron)
Attachment #154964 -
Flags: review?(dbaron)
Attachment #154981 -
Flags: superreview?(dbaron)
Attachment #154981 -
Flags: superreview+
Attachment #154981 -
Flags: review?(dbaron)
Attachment #154981 -
Flags: review+
Assignee | ||
Comment 3•20 years ago
|
||
Checked in.
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 4•20 years ago
|
||
Backed out because it caused ~10ms Tp regression on btek. Maybe it's noise but I have to go to bed. It's probably the extra calls to GetOverflowLines on every block reflow, and possible in DoRemoveFrame (although in the latter case we should always find the frame to delete before we try the overflow lines, since Tp doesn't test blocks with next-in-flows, I think). I should probably try adding state bits to indicate the presence of overflow lines, overflow out-of-flows, and overflow placeholders, it would be easy. But not right now...
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Assignee | ||
Comment 5•20 years ago
|
||
Relanded. Let's see how btek behaves this time.
Assignee | ||
Comment 6•20 years ago
|
||
btek looks happy. Yay!
Assignee | ||
Updated•20 years ago
|
Status: REOPENED → RESOLVED
Closed: 20 years ago → 20 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 7•20 years ago
|
||
Looks like this did in fact regress Tp by maybe 5ms.
You need to log in
before you can comment on or make changes to this bug.
Description
•