Commit Graph

453 Commits

Author SHA1 Message Date
buster@netscape.com
1516c28a7a many fixes that effect http://www.mozilla.org and related pages.
these fixes are for nested tables with percent widths, for tables including both rowspan and colspan,
and for tables with only a single column.
some rounding errors were eliminated.
more debugging output, and some new assertions.
1998-09-09 20:00:40 +00:00
buster@netscape.com
11dada02d7 expanded nsIFrame::List to include nsIListFilter *aFilter param, by default nsnull.
aFilter is useful for determining if a frame should output itself during
a List().  In any event, the children of the frame are always processed.
added nsIListFilter, an interface for any object that wants to act like a filter for frame dumps
added   static NS_LAYOUT nsIListFilter * GetFilter(nsString *aFilterName);
currently, only TableListFilter implements nsIListFilter.
in response to List(...TableListFilter), the frame model is dumped in a way that is useful
for table layout regression testing.  Currently this is controlled by command line switches on the viewer app.
1998-09-02 21:59:54 +00:00
kipp@netscape.com
d515f73150 XPCOM'ized nsIContent and nsIHTMLContent 1998-08-29 20:20:38 +00:00
peterl@netscape.com
91dcfc02b4 no longer force unique style contexts 1998-08-27 00:57:05 +00:00
troy@netscape.com
7853fdbc5e Change to object lifetime management. Views are no longer ref counted 1998-08-08 04:23:33 +00:00
buster@netscape.com
35fe484983 synch with branch
fixed the following bugs: 312653 312656 312655
the fixes were:

1. cells now inherit their bgcolor from the row, if available.  This is the
Nav4 way of drawing row bgcolor, rather than having the row paint its own bgcolor. (Troy, I intend to make this conditional
based on the compatibility mode)

2. colspans across cols that are all specified width no longer try to proportionately
divide the width of the span between the cols.  see http://www.city.net (now it's really fixed, without breaking nested tables in
constrained situations.)  A happy side effect is nested tables in general behave better when constrained.

3. min table sizes are fixed, so min width changes to content now effect the
table correctly during incremental reflow.  This fixes the table layout portion of the bugs on the http://www.aol.com/corp tree.
Rick will check in the other half of this fix soon.  Until then, don't expect to see much improvement.

4. fixed bug 312799.  Table cell now always reserve at least the maxElementSize
of its content, fixing problems when desiredSize<maxElementSize
1998-08-07 02:11:51 +00:00
buster@netscape.com
e046f04ce8 any table with a nonsense rowspan lays out better 1998-07-24 00:43:09 +00:00
troy
26046305da Changed API for CreateContinuingFrame and GetReflowMetrics to take
a reference to a nsIPresContext
1998-07-15 03:23:23 +00:00
troy
26b49b4476 Changed Reflow() member function to take a reference to a nsIPresContext
instead of a pointer
1998-07-15 02:53:09 +00:00
buster
0f3a064a10 major hackage to the table data structures. slimmer, simpler, faster
this work exposed a few bugs and slow spots, which have been fixed
for the aol page, I added some additional backwards compatibility code
to proportionately distribute width when a fixed-width cell has colspans
1998-07-11 00:00:31 +00:00
troy
fa4e80a752 Deprecated the SetFirstContentOffset/SetLastContentOffset member
functions that take a nsIFrame*
1998-07-10 19:04:06 +00:00
troy
25992f23c0 Cleaned up ShrinkWrapChildren so pass 1 doesn't resize the rows 1998-07-07 03:48:21 +00:00
troy
3481cc90e8 More incremental reflow changes 1998-07-07 00:49:07 +00:00
troy
9420340aea Incremental reflow work-in-progress 1998-07-06 21:39:23 +00:00
troy
a9b6ca1c86 More work-in-progress incremental reflow code 1998-07-02 23:19:31 +00:00
troy
f5e6a2afc1 Moved code that resized the table row cells from the row group frame
to the row frame. It's now handled as part of the DidReflow() post-
processing code
1998-07-02 20:35:23 +00:00
troy
6b86eb70cd Some work-in-progress for incremental reflow 1998-07-02 05:39:10 +00:00
atotic
0af7891257 Fixed the for (PRInt32 i=) problem 1998-07-01 22:40:00 +00:00
troy
615498146d Moved shrink wrap code from table frame to table row group frame 1998-06-30 02:11:07 +00:00
troy
f3ba7f0c78 Added some asserts to the incremental reflow code 1998-06-24 22:05:59 +00:00
troy
854a1f9515 Changed to make sure we set the (x,y) for the frame before we reflow it 1998-06-24 18:09:47 +00:00
troy
823e9c13ab Changed to make sure we link the child frame into the list of frames before
we reflow it
1998-06-24 16:35:21 +00:00
troy
e5b7f89fc9 Some work-in-progress for table incremental reflow 1998-06-23 05:43:27 +00:00
buster
3ed8a1b541 Separated table content from table layout. This paves the way for XML/CSS-2 tables.
Lots and lots of optimizations.
1998-06-17 16:38:24 +00:00
peterl
4094b160d0 sync up to new style data apis 1998-06-05 06:09:09 +00:00
buster
0a4b04fa63 a variety of fixes and optimizations
together with a fix troy just checked in, this makes a lot of real-world tables look a whole lot better
1998-06-03 00:43:53 +00:00
troy
017eaee3fd Changed nsReflowState structs to be linked together 1998-05-29 20:36:05 +00:00
troy
8736c4b7d5 Added WillReflow() calls around reflowing of child frame 1998-05-28 18:37:56 +00:00
troy
bb67652981 Merged ResizeReflow() and IncrementalReflow() into one Reflow() member function 1998-05-25 17:31:49 +00:00
troy
f94f73b2ce Changed splittable enum to be bit flags 1998-05-22 04:54:11 +00:00
buster
709c2b2fdb made nsTableCaptionFrame a subclass of nsBodyFrame 1998-05-22 00:05:22 +00:00
kostello
0ad6084398 * Added Support for cell spacing
* NOTE: due to changes in the style system -- things won't look correct right away.
1998-05-21 23:43:18 +00:00
peterl
7e696e92be Changed GetStyleData to use an enum instead of an nsID 1998-05-21 02:34:13 +00:00
kipp
2399131ac0 Fixed up code that wasn't using the nsReflowStatus constants defined in nsIFrame.h 1998-05-14 00:49:46 +00:00
peterl
7ef2e3bd72 sync to new spacing apis 1998-05-12 22:28:01 +00:00
troy
1ec7781b4d Changed enum to conform with coding standards 1998-05-12 04:38:23 +00:00
troy
a4f9d76cd7 Change to nsIFrame API 1998-05-12 04:17:56 +00:00
kipp
4723760aa9 Ported to new CreateFrame/CreateContinuingFrame APIs 1998-05-07 00:08:20 +00:00
troy
b3260db3df Frames no longet store the content index-in-parent 1998-05-05 23:56:50 +00:00
kostello
e34a7ad3f7 Made SetStyleContext take the presentation context as a parameter
Made DidSetStyleContext virtual, since we need to override the behavior in subclasses
Moved attribute setting logic from nsTableCell to nsTableCellFrame
Table Borders are being drawn again : )
Table Padding is being displayed
1998-05-01 20:44:55 +00:00
buster
e00f37ff11 lots of pre-conditions and asserts added
fixed a bug in layout having to do with sizing cells in columns that are spanned into
1998-04-30 00:27:59 +00:00
kipp
7845deba9b Fix porting bugs - made it compile on IRIX 1998-04-26 02:59:29 +00:00
kipp
3d36933cf7 Port to removal of nsStyleMolecule 1998-04-25 18:48:48 +00:00
buster
2e6334e1b0 table header and footer rowgroups placed properly, replicated across continuing tables
some pagination fixes, including a hack to make negative available heights = 1.
1998-04-23 17:29:07 +00:00
peterl
28bdc129ee WIP moving margin, border & padding out of nsStyleMolecule
Switch to nsIPtr for style context ptrs to eliminate leaks
1998-04-22 06:37:57 +00:00
buster
cf46abc3a3 table performance and minor bug fixes. 1998-04-20 22:49:15 +00:00
troy
40298f909c Changed IsSplittable to have three return values 1998-04-17 23:08:20 +00:00
troy
13419330e6 Changed nsIFrame member functions to return a nsresult 1998-04-17 01:41:24 +00:00
buster
a4c89a0fc5 removed noisy debug 1998-04-16 22:25:09 +00:00
buster
0a677fc199 simple tables now paginate nicely. Some more complex tables
also paginate ok, though resizing in paginated mode doesn't work yet.
Captions still don't work.
1998-04-16 22:21:32 +00:00