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

88 Коммитов

Автор SHA1 Сообщение Дата
troy%netscape.com f095846367 Eliminated nsIRunaround interface, and folded space manager parameter into
nsHTMLReflowState structure
1998-10-02 04:10:00 +00:00
troy%netscape.com 8b034f4950 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 b89f1873bc 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 c1981ca059 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 abdd161d93 Frame construction changes for tables 1998-09-16 17:19:20 +00:00
buster%netscape.com c47f9bbfcb 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 a8906329f4 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 a2d1127af7 any table with a nonsense rowspan lays out better 1998-07-24 00:43:09 +00:00
troy 6b93376d50 Some more changes of nsIPresContext* to nsIPresContext& 1998-07-15 17:05:21 +00:00
troy fe75103d32 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 e264371e9b Changed API for CreateContinuingFrame and GetReflowMetrics to take
a reference to a nsIPresContext
1998-07-15 03:23:23 +00:00
troy e8893481dd Changed Reflow() member function to take a reference to a nsIPresContext
instead of a pointer
1998-07-15 02:53:09 +00:00
troy 993e1fb8ac Incremental reflow changes 1998-07-14 15:29:50 +00:00
troy be29f02f19 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 cee35a3b5c Changed it so we assume that rows are always complete 1998-07-10 05:23:05 +00:00
troy ee57569c83 Some incremental improvements 1998-07-10 04:00:38 +00:00
troy 1ee17c78b1 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 2b75ce1f63 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 b4aa257397 Some work-in-progress for incremental reflow 1998-07-02 05:39:10 +00:00
troy 226119c0ab Some work-in-progress for incremental reflow 1998-07-01 04:55:15 +00:00
troy 7c185eac84 Removed some vertical margin collapsing stuff that wasn't needed 1998-07-01 03:03:32 +00:00
atotic e6ceb0c01e Another class reference inside class declaration problem class A { void A:method }; is bad 1998-06-27 02:48:39 +00:00
buster 670bf41c19 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 722a46b983 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 3f9f422457 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 df525f7de0 some tentative steps towards content/frame separation in tables 1998-06-11 00:13:18 +00:00
buster 020c0f9645 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 b2296227ff Merged ResizeReflow() and IncrementalReflow() into one Reflow() member function 1998-05-25 17:31:49 +00:00
kostello e25ed4fab8 * 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 a97ac241a7 sync to new spacing apis 1998-05-12 22:28:01 +00:00
troy 3b08586876 Change to nsIFrame API 1998-05-12 04:17:56 +00:00
kipp c07c22af17 Ported to new CreateFrame/CreateContinuingFrame APIs 1998-05-07 00:08:20 +00:00
troy ca23e47c2e Frames no longet store the content index-in-parent 1998-05-05 23:56:50 +00:00
kipp 1767b4a8f8 Port to removal of nsStyleMolecule 1998-04-25 18:48:48 +00:00
buster 92ffa0d48f 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 d504fcfb0c Changed nsIFrame member functions to return a nsresult 1998-04-17 01:41:24 +00:00
buster 39b10e3604 documentation changes 1998-04-14 21:45:28 +00:00
kipp 4717009d75 moved to pub 1998-04-13 20:24:54 +00:00