Mats Palmgren
f0978053f2
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
850e8b403f
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
6f9a0da875
Bug 299837. Implement text-align:end. r+sr=dbaron
2009-02-05 22:48:30 -05:00
Arpad Borsos
829f9f024a
Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc
2009-02-03 15:42:18 +01:00
Daniel Holbert
5b26d7d11e
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
24e7cb1f78
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.
--HG--
extra : rebase_source : 4894a2ca0278e2ab92f27459db77165f8348cf41
2009-01-12 14:20:59 -05:00
Benjamin Smedberg
50621e4f9f
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
d0b948876f
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
6d4b0667d0
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
eee42cfdd7
Replace space manager with a more limited float manager. (Bug 191448) r+sr=roc
...
--HG--
rename : layout/generic/nsSpaceManager.cpp => layout/generic/nsFloatManager.cpp
rename : layout/generic/nsSpaceManager.h => layout/generic/nsFloatManager.h
2009-01-04 19:39:54 -05:00
L. David Baron
57a8e776d8
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
82d6666100
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
b3d748ba11
Fix some missed renames from bug 471356. r+sr=bzbarsky
2009-01-04 14:52:38 -05:00
Robert O'Callahan
0731a2c4f4
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
3363523acc
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
f9d2d59b5e
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
8ff4467f78
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
ab3854de4f
Bug 462968. Sanitize block height. r+sr=dbaron
2008-11-26 11:57:28 +13:00
Brad Lassey
ea8dd114d1
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
3330d2adb7
Bug 462968. Sanitize block height. r+sr=dbaron
2008-11-26 11:57:28 +13:00
Benjamin Smedberg
9696613a50
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
4214b72dd5
Backed out changeset d4c9a0776667 (deCOM nsILineEnumerator) due to regression from it or bug 461212
2008-10-28 02:49:14 -04:00
Benjamin Smedberg
dd4c950cff
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
d4e731a68c
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
7a777b7b31
Bug 458969: dead stuff in nsSpaceManager r+sr=dbaron
2008-10-14 11:59:29 -07:00
Mats Palmgren
faeff8e834
DEBUG: nsBlockFrame::List should print the overflow lines. b=459540 r+sr=roc
2008-10-13 00:33:20 +02:00
Mats Palmgren
54ec50a55f
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
4a50767964
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
609b22ab61
Mark the bullet frame dirty when its ordinal change. b=203727 r+sr=dbaron
2008-10-11 03:41:10 +02:00
Daniel Holbert
8155b8841d
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
d0e70a51bf
Bug 452797 - Clean up unused variables in layout/; v6; r+sr=roc
2008-09-20 15:42:03 +02:00
Robert O'Callahan
f79290bb0e
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
timeless@mozdev.org
5819f54b4e
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
timeless@mozdev.org
b0c349250f
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
cddb22d87c
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
1f62482141
Bug 452797 - Clean up unused variables in layout/; r+sr=roc
2008-09-06 20:38:31 +02:00
Robert O'Callahan
ea7596e60c
Backing out changesets 75919d3eb3d0 and 14ce7619e9c1 due to test failures
2008-09-07 00:35:20 +12:00
Robert O'Callahan
f7339a0460
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
d9344bb542
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
3976bbe726
Bug 413048. Disable float breaking in columns. r+sr=dbaron
2008-08-12 21:32:10 +12:00
Robert O'Callahan
fba2d206f6
Bug 230555. Support white-space:pre-line. r+sr=dbaron
2008-08-12 20:31:56 +12:00
Robert O'Callahan
4042320c9c
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
0dd0a7f5ba
Support for word-wrap CSS property. Bug 99457, r+sr=dbaron, roc
2008-07-24 10:16:18 +03:00
Boris Zbarsky
3af92ec386
Bug 430352. Use the same border throughout. r+sr=roc
2008-07-17 09:32:49 -04:00
Andrew Smith ext:(%2C%20Rob%20Arnold%20%3Ctellrob%40gmail.com%3E%2C%20L.%20David%20Baron%20%3Cdbaron%40dbaron.org%3E)
49c9b3d67e
Implement css3 border-image property. (Bug 378217) r=vlad,dbaron,robarnold
2008-07-16 23:30:25 -07:00
L. David Baron
9e4ceade8e
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 ext:(%2C%20Rob%20Arnold%20%3Ctellrob%40gmail.com%3E%2C%20L.%20David%20Baron%20%3Cdbaron%40dbaron.org%3E)
bb4be48531
Implement css3 border-image property. (Bug 378217) r=vlad,dbaron,robarnold
2008-07-16 22:18:38 -07:00
Karuna (karunasagark@gmail.com)
22a214272c
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
7e868a56e1
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
Robert O'Callahan
6382ad7c40
Backing out text-shadow due to Mac issues
2008-06-12 17:32:31 +12:00