Commit Graph

575 Commits

Author SHA1 Message Date
Arpad Borsos
1f292f1511 Bug 481932 - use do_QueryFrame instead of IS_TABLE_CELL + cast; r+sr=roc 2009-03-24 23:10:06 +01:00
Arpad Borsos
c3e840ee00 Bug 474369 - get rid of nsVoidArray, layout/tables part. r+sr=roc 2009-02-05 10:09:50 +01:00
Daniel Holbert
e03e2c6996 Whitespace-only: Fix parameter indentation in nsTableRowFrame.cpp and nsTableRowGroupFrame.cpp 2009-01-14 14:16:43 -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
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
Bernd
9ef8b0cecd bug 258377, make border collapsed tables to listen for dynamic border style changes r/sr=bzbarsky 2008-10-26 11:11:34 +01:00
Bernd
7d9b7a8bc3 make sure that the height from a fixed height tbody gets distributed, bug 439639, r=dholbert, sr=roc 2008-09-20 11:30:30 +02:00
Bernd
10f309c8ba remove obsolete assert and comment bug 430374 r/sr=bzbarsky 2008-08-24 10:06:57 +02: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
fa5f0d0a80 Bug 423823. Clip overflowing background when tbody is scrollable. r=fantasai,sr=dbaron 2008-08-16 21:10:29 +12:00
Justin Dolske
c2e640288c Backed out changeset 7362e63c648e (relanding bug 449422) 2008-08-13 20:49:57 -07:00
Justin Dolske
505e5d8c31 Backed out changeset e7c43898c379 2008-08-13 16:29:57 -07:00
Boris Zbarsky
1eee8fcbfe Bug 449422. Assert early and hopefully not often when table-row frames have the wrong display type. r=bernd, sr=roc 2008-08-07 17:05:19 -04:00
Robert O'Callahan
62fabc078c Bug 444688. Use an IsFrameOfType check instead of a frame state bit to detect whether a frame excludes ignorable whitespace children. r+sr=dbaronlayout 2008-07-14 10:41:18 +12:00
78375819e9 Bug 409084: When determining if a row or rowgroup isTopOfPage, check if the previous row has positive YMost, rather than just checking if there *is* a previous row. r=bernd sr=dbaron a1.9=beltzner 2008-04-17 11:18:41 -07:00
4f8b8e885f Bug 394114 Interfaces missing from various QI implementations. r=jag sr=jag a=dsicore 2008-04-07 23:18:35 -07:00
0cb2eeda4f lookup all columns for possible originating cells, bug 426706 r/sr=bzbarsky a=beltzner 2008-04-06 05:16:45 -07:00
19a8b8ed91 initialize all border parameters so that the border is initialized even for empty rowgroups bug 424434 r/sr=bzbarsky a=mtschrep 2008-04-06 05:12:04 -07:00
d58e6e6f6d Bug 416735. When a table frame paints the backgrounds for all its parts, make sure those parts notify the table frame display item when they are background-attachment:fixed. r+sr=dbaron 2008-04-06 04:34:14 -07:00
d46b8fe28d Whitespace-only change: clean up parameter indentation in nsTableRowGroupFrame 2008-04-02 14:52:04 -07:00
20f8de901f Invalidate things correctly when the caption or inner table is resized. Bug 424465, r=bernd, sr=roc 2008-04-01 14:53:19 -07:00
976c122de7 lookup all columns for possible originating cells, bug 423514 r/sr=bzbarsky a=mtschrep 2008-03-26 22:03:02 -07:00
5339fd2477 Don't do translation during table border painting. b=421069 Patch by Robert O'Callahan <roc@ocallahan.org>. r+sr=dbaron approval1.9b5=damon 2008-03-20 18:18:30 -07:00
a841f25ce0 Backing out bug 421069 (which I landed earlier today for roc) because it caused bug 424016. 2008-03-19 22:58:00 -07:00
f31ea74608 Don't do translation during table border painting. b=421069 Patch by Robert O'Callahan <roc@ocallahan.org>. r+sr=dbaron 2008-03-19 16:02:38 -07:00
8789fee689 Fixing asymmetry between what timeless landed for bug 394114 and what he backed out. 2008-03-19 15:05:04 -07:00
46f0a1f41c reverting, wrong patch, missing AMBIGUOUS 2008-03-19 14:55:22 -07:00
c5fff65119 Invalidate tables a little harder. Bug 421632, r+sr=roc 2008-03-16 13:32:48 -07:00
dedc2f4358 make the lineiterator interface for tables a little more sane bug 388700 r/sr=roc a=mtschrep 2008-02-20 12:22:18 -08:00
8c000d2f14 document the lineiterator interface and all its current flaws. Make :GetNextSiblingOnLine more efficient. bug 388700 r/sr=roc a=mtschrep 2008-02-09 09:10:58 -08:00
49e32902e4 Fix bug 416073: invalidate more things as needed during table reflow to prevent glitches. r+sr=roc 2008-02-08 01:36:32 -08:00
8f57a39053 Bug 403669 - Dirty the table geometry when we split row groups. r+sr=dbaron, a=blocking1.9+ 2008-01-26 17:54:48 -08:00
0041f7726a do not compare with a unconstrained size, bug 390049 r/sr=roc a=mtschrep 2008-01-19 22:42:31 -08:00
e46c4584ed when splitting rowgroups the space that is left on the page is computed from relative to the bottom, bug 373400 r=sharparrow1 sr=dbaron a=blocking 1.9+ 2007-12-02 11:19:00 -08:00
b507d813de Bug 397428. Return 'complete' on *all* paths whenever we push a rowgroup to the next page. r=bernd,sr=bzbarsky,a=schrep 2007-11-11 17:45:56 -08:00
368c29ae32 Introduce a setter for nsHTMLReflowState::mComputedHeight so that we're sure to
update the resize flags properly.  Bug 388084, r+sr+a=dbaron
2007-08-02 11:08:05 -07:00
98de634631 Bug 348748 - Replace all instances of NS_STATIC_CAST and friends with C++ casts (and simultaneously bitrot nearly every patch in existence). r=bsmedberg on the script that did this. Tune in next time for Macro Wars: Episode II: Attack on the LL_* Macros. 2007-07-08 00:08:04 -07:00
79eeaa32d0 Cleanup implementations of QueryInterface. b=385750 r+sr=dbaron r+sr=jst 2007-07-03 19:15:31 -07:00
571fce1f0d Bug 386142: fantasai's li'l Need More Comments bug. Patch by fantasai, r+sr=roc 2007-07-03 15:49:00 -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
e0f90db412 Rename nsIFrame::GetPresContext to nsIFrame::PresContext. Bug 376042, patch byTaras Glek <tglek@mozilla.com>, rs=roc. 2007-03-30 14:11:41 -07:00
dbaron@dbaron.org
11f081d8dc Remove the remainder of the pixel rounding in the table code. b=371187 r=bernd sr=roc 2007-02-22 20:22:12 +00:00
bmlk@gmx.de
1b2410f3f9 limit array access when a rowspan points to a already pushed row, bug 370360 r/sr=bzbarsky 2007-02-21 19:42:21 +00:00
sharparrow1@yahoo.com
376b32f2e8 Bug 370185: clean up view header includes (trivial). rs=bzbarsky. 2007-02-12 19:17:33 +00:00
sharparrow1@yahoo.com
2da748b9c2 Bug 177805: Fix the use of units in Gecko. r+sr=roc 2007-02-07 07:46:44 +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