58 Commits

Author SHA1 Message Date
kipp%netscape.com
4846f41f1f Reworked frame factory methods; fixed bug 4519 1999-05-11 22:03:29 +00:00
karnaze%netscape.com
b32fa94515 support for right-to-left direction 1999-04-22 03:51:58 +00:00
troy%netscape.com
c67fa96f11 Removed SetInitialChildList() and now we inherit the base class version
which does the same thing
1999-04-13 01:11:46 +00:00
troy%netscape.com
3bdf672129 Removed nsIFrame::CreateContinuingFrame() 1999-02-25 05:31:15 +00:00
troy%netscape.com
47cbdb1e9d Added frame type atoms for several table frame classes 1999-02-24 05:54:31 +00:00
troy%netscape.com
68894039d4 More work-in-progress for table pagination 1999-02-22 03:28:00 +00:00
kipp%netscape.com
7f96144059 Spanked away SizeOf methods and nsIListFilter 1999-01-16 00:00:50 +00:00
kipp%netscape.com
c29e5116c7 Revised frame Paint API 1998-12-18 15:54:23 +00:00
troy%netscape.com
fabbe773c2 Changed SetRowIndex() to be inline and non-virtual 1998-12-16 04:31:38 +00:00
troy%netscape.com
6b60c930de Removed InitRowData() member function which is now obsolete 1998-12-16 04:08:36 +00:00
troy%netscape.com
2a4b2c503f Added Init() member function to nsIFrame 1998-12-03 06:31:43 +00:00
buster%netscape.com
4c98e2689d implemented table height algorithms. also made a slight modification to
the way a table finds its container's width.
1998-11-20 01:01:25 +00:00
kipp%netscape.com
a6926809f0 Added DumpRegressionData; revised ListTag; added GetFrameName 1998-11-19 17:22:29 +00:00
joki%netscape.com
77fd9c2652 Reworking internal event code to use nsIFrame::GetFrameForPoint
Adding new functionality through nsEventStateManager (cursor change, enter/exit events, tab navig)
1998-11-18 05:25:26 +00:00
troy%netscape.com
527ee073f8 Renamed Init() to SetInitialChildList() and added an additional parameter
for the name of the child list
1998-11-10 06:05:32 +00:00
buster%netscape.com
a8be97a521 fixed the bug where events were not getting passed down to content inside
of cells with rowspans.  Basically, I just override HandleEvent() in nsTableRowGroupFrame
to ask nsTableRowFrame::Contains(), rather than the default action which is to
just use the child's rect.
1998-11-07 00:36:37 +00:00
buster%netscape.com
03cad6390d some extremely preliminary work for styleChanged incremental reflow 1998-10-30 07:57:44 +00:00
buster%netscape.com
e220aee18d all containers now decend from nsHTMLContainerFrame
all "unknown frame" incremental reflow support methods now
replaced with nsHTMLContainerFrame::AddFrame and ::RemoveFrame
1998-10-20 17:45:07 +00:00
buster%netscape.com
d8e6fb4c34 incremental reflow now includes insert/append/delete cell 1998-10-20 15:59:56 +00:00
buster%netscape.com
0d373afd21 lots of work for incremental reflow when the target frame is a table frame 1998-10-14 16:32:45 +00:00
troy%netscape.com
7aceb4270d Eliminated nsIRunaround interface, and folded space manager parameter into
nsHTMLReflowState structure
1998-10-02 04:10:00 +00:00
troy%netscape.com
ba3c7125c2 Separated reflow process out of nsIFrame and into nsIFrameReflow. Also
added nsIHTMLReflow, which is an HTML specific reflow interface
1998-10-01 04:46:11 +00:00
buster%netscape.com
0bec735087 removed lots of assumptions about frame ordering and containership.
table frames no longer assume they are n levels below the inner table frame
table frames no longer assume their child frames are always the expected type of
frame.  Now they check the display type and use that as sufficient proof that the frame
is of the right type.  This implies a heavy reliance on the frame construction code to do
the right thing and always stamp out the right kind of frame for a given display type.
1998-09-24 16:37:22 +00:00
buster%netscape.com
1fba5ac7dc all frame initialization and related logic has moved into the various table frames' Init() methods
from their respective InitalReflow() methods.
table-layout=fixed now completely skips pass1 reflow and doesn't require maxElementSize
information, saving a tremendous amount of time during initial reflow.
1998-09-23 21:48:26 +00:00
troy%netscape.com
65269d3422 Frame construction changes for tables 1998-09-16 17:19:20 +00:00
buster%netscape.com
953b2efb58 nsStyleConsts.h added some HTML 4 consts for tables
nsHTMLAtoms.cpp,h             added some HTML 4 strings for tables
nsHTMLParts.h                 added constructors for new table content classes
nsGenericHTMLElement.cpp,h    added table frame creation, common table attribute parsing
nsHTMLTable*Element.cpp       these are the new table content classes
nsHTMLContentSink.cpp         enabled the new content and removed the old
nsHTMLStyleSheet.cpp          fixed the table style optimizations to work with new content
nsTable*Frame.cpp             these work with the new content
1998-09-15 17:58:24 +00:00
buster%netscape.com
89e198237d 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
buster%netscape.com
911380aeb5 any table with a nonsense rowspan lays out better 1998-07-24 00:43:09 +00:00
troy
a629312753 Some more changes of nsIPresContext* to nsIPresContext& 1998-07-15 17:05:21 +00:00
troy
88ad0371f3 Some improvements to the incremental reflow logic to handle all the
cases handled by resize reflow
1998-07-15 04:45:58 +00:00
troy
d660868bc2 Changed API for CreateContinuingFrame and GetReflowMetrics to take
a reference to a nsIPresContext
1998-07-15 03:23:23 +00:00
troy
a90fe8e1de Changed Reflow() member function to take a reference to a nsIPresContext
instead of a pointer
1998-07-15 02:53:09 +00:00
troy
8fb033f617 Incremental reflow changes 1998-07-14 15:29:50 +00:00
troy
786d36083e More code re-shuffling. I need to hurry and check-in before Cujo
whacks the tree
1998-07-10 22:56:13 +00:00
troy
b147b465e4 Changed it so we assume that rows are always complete 1998-07-10 05:23:05 +00:00
troy
4e29404d47 Some incremental improvements 1998-07-10 04:00:38 +00:00
troy
d138bc14e1 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
buster
b54c4bdc95 added an optimization that skips pass2 cell reflows when the new available width is unchanged
from the prior available width.  Some real-world test cases sped up
1-2 orders of magnitude for resize reflow.  Initial reflow is unchanged because
we still need to get pass1 metrics on all content.
fixed nsCSSBlockFrame.cpp to take margins into account when computing parent's available width
fixed distribution of excess space to table cells when table is bigger than the content it holds.
not quite finished yet, but better.
1998-07-02 17:40:56 +00:00
troy
8df0e96786 Some work-in-progress for incremental reflow 1998-07-02 05:39:10 +00:00
troy
59d4da2785 Some work-in-progress for incremental reflow 1998-07-01 04:55:15 +00:00
troy
aa312a24e8 Removed some vertical margin collapsing stuff that wasn't needed 1998-07-01 03:03:32 +00:00
atotic
12f2a33570 Another class reference inside class declaration problem class A { void A:method }; is bad 1998-06-27 02:48:39 +00:00
buster
ba02200c08 fixed some bugs related to rowspans. This gets us closer on pages like Mozilla.org that were getting wild table heights. 1998-06-24 19:13:19 +00:00
buster
aca4c96fbe lots of nested tables look much better
misc. nav4 compatibility enhancements
added the ability to QueryInterface for some specific table frame types
1998-06-23 23:23:21 +00:00
buster
288d645ae3 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
buster
2d31c54583 some tentative steps towards content/frame separation in tables 1998-06-11 00:13:18 +00:00
buster
07076ff7cf cell width calculations are working (not for colspan cells yet)
some bug fixes and optimizations
some of the more elaborate test cases are closer to Nav4-compatible
1998-06-05 02:36:25 +00:00
troy
3ea1d2d8e3 Merged ResizeReflow() and IncrementalReflow() into one Reflow() member function 1998-05-25 17:31:49 +00:00
kostello
193764594a * 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
9bc80be166 sync to new spacing apis 1998-05-12 22:28:01 +00:00