Commit Graph

1140 Commits

Author SHA1 Message Date
Boris Zbarsky
57a404d495 Backed out changeset 622a29736f33 to see whether bug 496823 causes the WinXP Txul regression. 2009-07-28 14:35:28 -04:00
Boris Zbarsky
a8b4b2dc7e Bug 504221 part 12. Switch SetInitialChildList to nsFrameList. r=fantasai, r+sr=roc 2009-07-28 08:53:20 -04:00
Boris Zbarsky
4ce6b9009b Bug 504221 part 6. Switch nsBlockFrame::AddFrames to nsFrameList. r=fantasai,roc 2009-07-28 08:51:10 -04:00
Boris Zbarsky
f3c6270c7b Bug 504221 part 5. Switch from GetFirstChild to GetChildList (returning an nsFrameList). For now, keep a GetFirstChild shim so callers don't have to be updated. r=fantasai, r+sr=roc 2009-07-28 08:51:09 -04:00
Boris Zbarsky
97e02084ab Bug 496823. Blocks can implement GetLastChild() much faster than by just getting first child and iterating its siblings. r=roc 2009-07-26 21:27:32 -04:00
Boris Zbarsky
baa9e8e94d Bug 505482. Make sure to not leave frames on overflow lists when we interrupt reflow. Also fixes bug 478527 and bug 496742. r=roc 2009-07-24 09:32:32 -04:00
fantasai
0c4b41f686 Bug 499377 - Store float region on frame r+sr=roc 2009-07-14 22:19:31 -07:00
fantasai
f1bb4518c0 Bug 503183 - Use Overflow Containers for float continuations beyond end of containing block r=roc 2009-07-13 09:50:54 -07:00
fantasai
979cfec7d7 Bug 389462 - columns don't reflow on resize r=roc 2009-07-06 18:23:24 -07:00
Daniel Holbert
c4a7638445 Bug 465651: Move ReflowOverflowContainerChildren earlier in nsBlockFrame::Reflow. r+sr=roc 2009-06-28 20:56:13 -07:00
L. David Baron
c9560107e0 Don't reduce the height we're checking while we reflow for floats. (Bug 494332) r+sr=roc 2009-06-16 08:00:20 -07:00
Timothy Nikkel
2ad508ad03 Bug 491700 - "hang while resizing windows (CPU hits 100%, no interaction is possible)." r+sr=bzbarsky 2009-06-12 21:28:41 -04:00
L. David Baron
000832a3a7 Fix bug 25888 for inline frames other than bullets: redo line reflow when the line's height pushes it into the way of other floats. (Bug 25888) r+sr=roc 2009-05-20 07:21:34 -04:00
Jonas Sicking
f0aa860733 Bug 481566: Add prefs to control making the content sink more responsive. r/sr=mrbkap 2009-05-19 08:54:42 -07:00
Robert O'Callahan
989197ed86 Bug 492480. Unregister placeholder relationship when we destroy out-of-flow frames, instead of trying to do it earlier in many places and not always doing it right. r+sr=dbaron 2009-05-14 09:35:02 +12:00
Daniel Holbert
9e76962785 Bug 490909: Remove old layout debugging code, patch #2: remove 'VerifyTree' & related code. r+sr=dbaron 2009-05-12 12:03:09 -07:00
Simon Montagu
516940e2b2 Do bidi reordering for visual RTL frames in the same way as other bidi frames. Bug 492231, r+sr=roc 2009-05-11 03:36:01 -07:00
Boris Zbarsky
5504640aef Bug 492080. More correct marking of dirty bits on floats when we interrupt. r+sr=dbaron 2009-05-09 22:51:34 -05:00
Daniel Holbert
88ce5e7882 Bug 490909: Remove old debugging functions InLineList & InSiblingList, since they're not used by anything. r+sr=dbaron 2009-05-06 10:03:59 -07:00
Boris Zbarsky
1dae292b2e Bug 67752. Implement interruptible reflow. r=roc,dbaron 2009-04-21 19:53:52 -04:00
Joe Drew
659abece3b Backed out changeset 6a452e522e07 - Boris Zbarsky – Bug 67752. Implement interruptible reflow. r=roc,dbaron - because of apparent Tp hangs. 2009-04-21 23:02:17 -04:00
Boris Zbarsky
600528e80b Bug 67752. Implement interruptible reflow. r=roc,dbaron 2009-04-21 19:53:52 -04:00
L. David Baron
3c1d1a8c57 Use a struct containing a rectangle and a boolean for float available space rather than passing them around separately. (Bug 25888) r+sr=roc 2009-04-08 13:52:37 -07:00
L. David Baron
6c3ffda80d Switch away from nsBlockReflowState::mAvailSpaceRect in nsBlockFrame::PropagateFloatDamage. (Bug 25888) r+sr=roc 2009-04-08 13:52:37 -07:00
L. David Baron
8e5a8817f7 Switch away from nsBlockReflowState::mAvailSpaceRect for reflow of child blocks. (Bug 25888) r+sr=roc 2009-04-08 13:52:37 -07:00
L. David Baron
6dd4003165 Switch away from nsBlockReflowState::mAvailSpaceRect for inline reflow. (Bug 25888) r+sr=roc 2009-04-08 13:52:37 -07:00
L. David Baron
5607fe20f6 Switch away from nsBlockReflowState::mAvailSpaceRect for reflow of child floats. (Bug 25888) r+sr=roc 2009-04-08 13:52:36 -07:00
L. David Baron
81177784f9 Switch away from nsBlockReflowState::mAvailSpaceRect in bullet reflow, and simultaneously refix bug 427370 in a way that also fixes bug 428810. (Bug 25888) r+sr=roc 2009-04-08 13:52:36 -07:00
Jonathan Kew
ccbd2d2564 Bug 475968. Eliminate NS_FRAME_OUTSIDE_CHILDREN flag, store small overflow areas cheaply within the frame. r+sr=roc 2009-04-06 12:31:50 +12:00
Masayuki Nakano
202351fbc8 Bug 338209 Make spellchecker use thicker wavy underlines instead of dotted underlines r+sr=roc 2009-04-03 16:26:28 +09:00
L. David Baron
2938e562a7 Remove check for block being impacted by float that should no longer be needed given float damage propagation. (Bug 25888) r+sr=roc 2009-03-11 07:51:32 -07:00
L. David Baron
4130a8da28 Fix nsBlockFrame warning about child being used uninitialized in FindLineContaining by switching while to do-while. (Bug 477963) r+sr=roc 2009-02-19 09:48:37 -08:00
L. David Baron
204c9f0ed9 Revert (back out) the previous 11 changesets (bugs 477959, 477961, 477963, 477962, 322475, 478899, 475215, 478156), due to Mac talos orange with (as usual) no useful diagnostic. 2009-02-18 18:59:47 -08:00
L. David Baron
5510e72075 Fix nsBlockFrame warning about child being used uninitialized in FindLineContaining by switching while to do-while. (Bug 477963) r+sr=roc 2009-02-18 17:13:24 -08:00
Mats Palmgren
36ce158c8a Keep track of the line container and forget the current line if it's for a different container. b=444027 r+sr=roc 2009-02-10 10:23:05 +01:00
L. David Baron
d255366dc1 Avoid calling PlaceBlock and unsetting dirty bits that we still need when an ancestor is going to reflow for clearance. (Bug 476357) r+sr=roc 2009-02-09 20:36:54 -08:00
Boris Zbarsky
1a8d718f95 Bug 299837. Implement text-align:end. r+sr=dbaron 2009-02-05 22:48:30 -05:00
Arpad Borsos
af5c52fa8a Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc 2009-02-03 15:42:18 +01:00
Daniel Holbert
8c965d4b9d Bug 465928 followup: correct typo in enum name - s/PERSERVE/PRESERVE/. No functional changes. r=roc 2009-01-13 12:28:28 -08:00
Benjamin Smedberg
0f95227641 Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

nsITextControlFrame didn't have an IID the first time around, but this wasn't a compile error because nsITextControlFrame::kFrameIID inherited from nsIFormControlFrame::kFrameIID. I've added a static analysis pass to verify the correct behavior, since I can't figure out a way to make the compiler do it.
2009-01-12 14:20:59 -05:00
Benjamin Smedberg
7a084ac404 Backed out changeset 4c4df6ed1b41 - Bug 396185 - Make nsIFrame not inherit from nsISupports due to mochitest failures... these appear to be crashes in nsGenericHTMLElement::GetEditorInternal. 2009-01-09 11:35:24 -05:00
Benjamin Smedberg
991a16d8bc Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

This patch locally causes two REFTEST-UNEXPECTED-PASS for Bidi stuff. It's possible that I accidentally fixed a bug, but I'm not sure, so I'm going to wait for the tinderboxes to confirm my local results.
2008-11-05 14:25:30 -05:00
Mats Palmgren
90b917ad74 DEBUG: Make nsBlockFrame::List really print the overflow lines. b=472193 r+sr=roc 2009-01-08 22:17:53 +01:00
L. David Baron
7c32f841de Replace space manager with a more limited float manager. (Bug 191448) r+sr=roc 2009-01-04 19:39:54 -05:00
L. David Baron
f2d241e914 Rename flags and methods from space manager to float manager. (Bug 191448) r+sr=roc 2009-01-04 19:39:54 -05:00
L. David Baron
4a355f09b6 Remove the VerifyReflow code that checked the space manager state. (Bug 191448) r+sr=roc 2009-01-04 14:52:38 -05:00
L. David Baron
7622f833fa Fix some missed renames from bug 471356. r+sr=bzbarsky 2009-01-04 14:52:38 -05:00
Robert O'Callahan
d9ba93a856 Bug 458296. When a block doesn't carry out the bottom-margin of its children, add that bottom-margin to its overflow area. Also, add the bottom-padding of a scrolled block to its overflow area. r+sr=dbaron 2008-12-29 21:18:40 +13:00
Simon Montagu
48d8625f47 Delete all text frame continuations when deleting first letter frame. Bug 466763, r+sr=roc 2008-12-02 22:56:53 -08:00
Robert O'Callahan
867901d04c Bug 465928. Avoid SetInvalidateTextRuns being called by nsBlockFrame::DoRemoveFrame when we're just deleting empty continuation frames. r+sr=dbaron 2008-12-03 14:27:19 +13:00