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
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
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
Robert O'Callahan
9269d984e4
Followup comment change for bug 465928.
2008-12-03 14:50:22 +13: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
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
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
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
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
cd6776c3e4
Backing out text-shadow due to Mac issues
2008-06-12 17:32:31 +12:00
Michael Ventnor
0783f3a97a
Implement text-shadow rendering.
2008-06-12 14:34:40 +12:00
Robert O'Callahan
221d348cf2
Allow floats to be placed on the current line even after nonzero-width inline content has been placed. Fixes an Acid3 layout bug. r+sr=dbaron
2008-06-11 11:53:22 +12:00
2cba0afc84
Compute widths for replaced block clearing past floats once we're at the correct vertical position. b=430813 r+sr=roc a=schrep
2008-05-03 16:33:36 -07:00
08ad459197
Fix bug 427129 / 377664: When displacing blocks that don't interact with floats around floats, displace the border box rather than the margin box. Fix bug 427782: Simultaneously, only displace when the width actually won't go down to an amount that fits (i.e., if it will go to an amount smaller than the intrinsic minimum width, let it). b=427129 r+sr=roc a=schrep
2008-04-14 18:05:17 -07:00
003ba486ca
Bug 427017: Disable page-break-before/after for fixed- & absolutely-positioned elements. Also, fix assertion during an iterator-comparison by handling case where lineBox is in overflow-lines. r=fantasai sr=roc a1.9=beltzner
2008-04-11 22:32:49 -07:00
516d9d37b4
Bug 417014 Need blacklist system for underline offset adjusting of CJK fonts which have wrong underline offset r=roc+stuart, sr=roc, b1.9=stuart
2008-03-12 19:36:58 -07:00
bbbc01a0d1
Bug 400057. Make nsBlockInFlowLineIterator useful for finding the line containing a frame, searching across block continuations and their overflow lines. Use it in various places, especially in textrun construction. r+sr=dbaron
2008-02-27 01:53:48 -08:00
9ec4d96f1c
fixed positioned elements print only on first and last pages b=417676 r+sr=roc
2008-02-24 04:19:17 -08:00
6b7f42ddc3
Bug 391559 - "Incorrect ordered-list numbering within -moz-column-* (and/or numbering changes when clicked)" [p=craig.topper@gmail.com (Craig Topper) r+sr=roc a1.9=beltzner]
2008-02-23 23:31:29 -08:00
fa9c906fce
Stop using -moz-float-edge for list items, but offset the bullet position in the presence of floats. b=413840 (and numerous others) r+sr=roc a=blocking1.9+
2008-02-10 13:49:24 -08:00
0e992d0a5c
Bug 411870. nsBidiPresUtils needs to track the current line across block continuation boundaries. r=smontagu
2008-01-29 15:39:39 -08:00
a45f66ce73
Push scrollframes, tables, and other blocks that don't participate in float formatting down when they don't fit next to floats. b=134706,349255 r+sr=roc a=blocking1.9+
2008-01-28 23:40:05 -08:00
8c07f99bf2
Bug 411870 backout again
2008-01-28 11:10:26 -08:00
7069971a0a
Bug 411870. Bidi resolution needs to scan through block continuations when tracking the current line for frames. r=smontagu
2008-01-28 10:16:22 -08:00
9409e73aa0
backing out 411870
2008-01-27 22:28:31 -08:00
88fa1d00cc
Bug 411870. Make bidi resolution track lines across block continuation boundaries. r=smontagu
2008-01-27 21:07:14 -08:00
292273a3ac
Fix comment describing nsBlockFrame.
2007-12-12 13:49:14 -08:00
8dc8fca37a
Bug 400244. Remove UndoSplitPlaceholders which is not only unnecessary but actually harmful/crashy. r=fantasai,sr=dbaron
2007-12-01 02:51:56 -08:00
3c02193209
Bug 398101 - Be more diligent about invalidating textruns for lines [p=roc r+sr=dbaron a=blocking1.9+]
2007-11-08 22:55:32 -08:00
25179a8425
Bug 399384: Make first-letter frames use nearest ancestor blockFrame's content node, instead of direct parent's. r=bzbarsky, r+a=roc
2007-10-19 10:41:29 -07:00
b6efadf476
Bug 397518. Wrap inline non-MathML children of MathML frames in anonymous blocks. r+sr=bzbarsky
2007-10-12 01:30:54 -07:00
a6eade3046
Change the usage of NEEDS_BIDI_RESOLUTION so that it is either set on every block in a continuation chain or none of them. Bug 394805, r+sr+b=roc
2007-10-11 04:41:04 -07:00
a66b887e59
Take into account that |line| can be an overflow line when accessing the previous line. Patch by roc and me. b=397007 r+sr=me/roc blocking1.9=roc
2007-10-07 10:32:07 -07:00
87938a266e
Previous checkin was for bug 382422
2007-09-03 00:00:10 -07:00
7ff5e15a78
Bug 394222: Optimize calls to Bidi resolution. r=dbaron, sr+a=roc
2007-09-02 23:51:11 -07:00
e5d538f318
Bug 390050. Scan all blocks in a flow-chain, and their overflow lines, when iterating through lines to build text runs. r=smontagu,mats,sr=mats,a=bz
2007-08-22 02:08:13 -07:00
f5d4190bff
Bug 365336 text-decoration width should be rounded to the device pixels r+sr=roc
2007-08-06 01:15:00 -07:00
094b31fdd0
Bug 386801 - nsAbsoluteContainingBlock doesn't need to store a child list name; this shaves four bytes off nsViewportFrame, nsBlockFrame, and nsPositionedInlineFrame. r+sr+a=dbaron
2007-08-02 15:44:36 -07:00
e3742c090c
Bug 379349. Add support for 'overflow containers' --- special frame continuations that do not map any content of their own, but serve only as containers for laying out children that overflowed their parents' content height. patch by fantasai, r+sr=eli,roc
2007-07-25 21:03:29 -07:00
0490a58e96
Bug 381385: get rid of unneeded members of nsFloatCache (saves about 50 bytes footprint per float). r+sr=roc.
2007-06-16 13:27:46 -07:00
12449ae2ce
Do bidi resolution during GetPrefWidth() and GetMinWidth() as well as Reflow(). Bug 365130, r+sr=roc
2007-05-28 07:40:56 -07:00
cdb5b22b87
Change the FrameNeedsReflow API to pass the dirty flags to be added directly tothe method, instead of setting them before calling the method. That way we canavoid reflowing the ancestor of a reflow root which is not itself dirty but hasdirty children. This also makes it harder to set dirty bits inconsistentlywith the FrameNeedsReflow call. Bug 378784, r+sr=dbaron, pending rbs' reviewon the mathml parts.
2007-05-06 12:16:51 -07:00
2aa4681377
Bug 368863. Reparent floats properly when placeholders move between inline continuations. r+sr=dbaron
2007-04-20 17:42:58 -07:00
e57983fb6e
Improve detection of blocks with first-letter style. Bug 372550, r+sr=dbaron
2007-04-15 17:42:54 -07:00
bzbarsky@mit.edu
7228aea249
Make blocks whose ancestors are not blocks have the NS_BLOCK_MARGIN_ROOT and
...
NS_BLOCK_SPACE_MGR bits as necessary. Bug 354600, r+sr=roc
2007-02-18 23:53:25 +00:00
smontagu@smontagu.org
0f5b13f950
Bug 369236: Move IsBidiFormControl from nsHTMLReflowState to nsBlockFrame. r+sr=roc
2007-02-11 07:19:09 +00:00
cvshook@sicking.cc
e80f1dba4e
Kill remainders of ns(XBL|HTML|XUL|Layout)Atoms. r/sr=jst b=368128
2007-01-30 00:06:41 +00:00