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
Robert O'Callahan
c943d535af
Bug 457398. Don't treat empty lines as the first line for text-indent or first-letter/first-line purposes. r+sr=dbaron
2008-11-27 10:44:47 -08:00
Robert O'Callahan
6c0ad641d3
Bug 462968. Sanitize block height. r+sr=dbaron
2008-11-26 11:57:28 +13:00
Brad Lassey
091704e1e0
backing out changesets 026147c91538, fb2326fcfc36, ebf0c7cf17be, 57e6a1e9041e, 1f5d2c249f86 and d7a7824d6990 due to crash on linux talos machines durring tp.
2008-11-26 12:20:26 -05:00
Robert O'Callahan
50a38eff16
Bug 462968. Sanitize block height. r+sr=dbaron
2008-11-26 11:57:28 +13:00
Benjamin Smedberg
f2c9a5bafb
Relanding bug 461410 - nsILineIterator is never used outside of layout - set nsresults to replicate the existing code more correctly, which fixes the mochitest failures, r+sr=roc with nits noted by Mats Palmgren
2008-10-30 12:17:59 -07:00
Benjamin Smedberg
30915057bb
Backed out changeset d4c9a0776667 (deCOM nsILineEnumerator) due to regression from it or bug 461212
2008-10-28 02:49:14 -04:00
Benjamin Smedberg
f0a65beeac
Bug 461410 - nsILineIterator is never used outside of layout, and doesn't need to be refcounted: the callers can just destroy it when they're done with it. We can't do this with a virtual destructor, however, because nsTableRowGroupFrame implements the interface directly, while nsLineIterator is a separately-allocated class. So clients are expected to call DisposeLineIterator when they're done with it.
...
Instead of accessing nsILineIterator using QueryInterface, we add a nsIFrame::GetLineIterator API, which is cleaner and more efficient all at the same time!
r+sr=roc
2008-10-28 00:47:19 -04:00
Boris Zbarsky
77573e5341
Bug 442542. Make sure to reflow our possibly-size-dependent abs pos kids on the followup reflow that happens if clearance is discovered. r+sr=roc
2008-10-15 16:30:42 -04:00
Taras Glek
bcfdfec385
Bug 458969: dead stuff in nsSpaceManager r+sr=dbaron
2008-10-14 11:59:29 -07:00
Mats Palmgren
526caff682
DEBUG: nsBlockFrame::List should print the overflow lines. b=459540 r+sr=roc
2008-10-13 00:33:20 +02:00
Mats Palmgren
e7ae479812
Add 'aLineList' param to MarkLineDirty() so it knows the correct line list for 'aLine'. b=443528 r+sr=roc
2008-10-12 21:26:06 +02:00
Mats Palmgren
ebb006463c
When switching from the overflow lines to normal lines we must reset 'mInOverflowLines' or we'll compare 'mLine' to the wrong list on the next call. b=457375 r+sr=roc
2008-10-12 02:19:41 +02:00
Mats Palmgren
0eee31d638
Mark the bullet frame dirty when its ordinal change. b=203727 r+sr=dbaron
2008-10-11 03:41:10 +02:00
Daniel Holbert
e4d5526525
Bug 452157 - Update aState.mPrevChild when we pull from next-in-flow. r+sr=roc
2008-10-10 17:25:28 -07:00
Arpad Borsos
7f605b4bbc
Bug 452797 - Clean up unused variables in layout/; v6; r+sr=roc
2008-09-20 15:42:03 +02:00
Robert O'Callahan
bee2844b64
Bug 450930. Fire a DOM event when painting so that content and chrome can track what's being repainted. r=smaug,sr=dbaron
2008-09-18 21:47:21 +12:00
a74f8449cb
merging backout part two of two
...
to fix Bug 454186
SM crashes when try to download file [@ nsString::ToInteger - nsTreeBodyFrame::PaintProgressMeter]
2008-09-08 16:01:00 +02:00
bc80cb1791
Backed out changeset 54215f2cbc66
...
to fix Bug 454186
SM crashes when try to download file [@ nsString::ToInteger - nsTreeBodyFrame::PaintProgressMeter]
2008-09-08 16:00:32 +02:00
Robert O'Callahan
d97b45fb8e
Bug 243519. Rework root element frame construction and the CanvasFrame so that the CanvasFrame is an abs-pos container and the root element frame can be positioned. r=fantasai,sr=dbaron
2008-09-08 20:13:17 +12:00
Arpad Borsos
d8ad390726
Bug 452797 - Clean up unused variables in layout/; r+sr=roc
2008-09-06 20:38:31 +02:00
Robert O'Callahan
26dac5de7f
Backing out changesets 75919d3eb3d0 and 14ce7619e9c1 due to test failures
2008-09-07 00:35:20 +12:00
Robert O'Callahan
296840fa17
Bug 243519. Rework root element frame construction and the CanvasFrame so that the CanvasFrame is an abs-pos container and the root element frame can be positioned. r=fantasai,sr=dbaron
2008-09-06 21:35:05 +12:00
Boris Zbarsky
70c3181706
Bug 449362 - "Table border is rendered incorrectly when the table cell size changes due to javascript." [r+sr=roc]
2008-08-20 01:45:29 -05:00
Robert O'Callahan
b4185b069c
Bug 413048. Disable float breaking in columns. r+sr=dbaron
2008-08-12 21:32:10 +12:00
Robert O'Callahan
a4e0828d4b
Bug 230555. Support white-space:pre-line. r+sr=dbaron
2008-08-12 20:31:56 +12:00
Robert O'Callahan
c9d8484ead
Bug 441418. Instead of guessing when frame broke at a first-letter boundary, explicitly record that in a reflow status bit. r+sr=dbaron
2008-08-06 12:31:25 +12:00
Simon Montagu
b43986ba75
Support for word-wrap CSS property. Bug 99457, r+sr=dbaron, roc
2008-07-24 10:16:18 +03:00
Boris Zbarsky
ff6f107f3a
Bug 430352. Use the same border throughout. r+sr=roc
2008-07-17 09:32:49 -04:00
Andrew Smith
925ffa073b
Implement css3 border-image property. (Bug 378217) r=vlad,dbaron,robarnold
2008-07-16 23:30:25 -07:00
L. David Baron
f51a50d4ed
Backed out changeset 9b0b2391485c due to linker errors related to nsStyleStructInlines.h not being included enough.
2008-07-16 22:59:14 -07:00
Andrew Smith
97a13b7ef1
Implement css3 border-image property. (Bug 378217) r=vlad,dbaron,robarnold
2008-07-16 22:18:38 -07:00
351323faba
Bug 409331. Instead of QIing to nsBlockFrame in various places, call an nsLayoutUtils method to do it. r+sr=roc
2008-07-14 10:10:23 +12:00
Michael Ventnor
150c4b66e1
Implement text-shadow rendering (bug 10713). r+sr=roc. Relanding with fixes to make tests pass on Mac
2008-06-13 10:02:32 +12:00