Граф коммитов

37 Коммитов

Автор SHA1 Сообщение Дата
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
troy 5b69e1f043 Change to nsIFrame API 1998-05-12 04:17:56 +00:00
kipp 519a6403a4 Ported to new CreateFrame/CreateContinuingFrame APIs 1998-05-07 00:08:20 +00:00
troy d477d86672 Frames no longet store the content index-in-parent 1998-05-05 23:56:50 +00:00
kipp 93fdfbe671 Port to removal of nsStyleMolecule 1998-04-25 18:48:48 +00:00
buster 9481637fae 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
troy 3ce8e88882 Changed nsIFrame member functions to return a nsresult 1998-04-17 01:41:24 +00:00
buster d3269eec0c documentation changes 1998-04-14 21:45:28 +00:00
kipp 098bef52b4 moved to pub 1998-04-13 20:24:54 +00:00