267 Commits

Author SHA1 Message Date
troy%netscape.com
90cbfd4db8 Removed all references to m<First,Last>ContentOffset,mChildCount,mLastContentIsComplete
git-svn-id: svn://10.0.0.236/trunk@10554 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-21 03:40:32 +00:00
troy%netscape.com
82c24af034 Removed farme enumeration member functions for indexed access, last child,
and child count


git-svn-id: svn://10.0.0.236/trunk@10475 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-19 03:24:26 +00:00
troy%netscape.com
b0bdb9e357 Removed nsIContentDelegate.h
git-svn-id: svn://10.0.0.236/trunk@10418 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-18 17:34:48 +00:00
troy%netscape.com
8b2676b6e1 Frame construction changes for tables
git-svn-id: svn://10.0.0.236/trunk@10159 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-16 17:19:20 +00:00
buster%netscape.com
1c8d847337 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


git-svn-id: svn://10.0.0.236/trunk@10047 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-15 17:58:24 +00:00
buster%netscape.com
f97d444d8f integrates with new frame creation methods
git-svn-id: svn://10.0.0.236/trunk@9671 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-09 21:34:10 +00:00
buster%netscape.com
e325a433cd 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.


git-svn-id: svn://10.0.0.236/trunk@9655 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-09 20:00:40 +00:00
buster%netscape.com
9a7b48eb26 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.


git-svn-id: svn://10.0.0.236/trunk@9156 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-02 21:59:54 +00:00
buster%netscape.com
f79492b78c empty rows now handled properly
git-svn-id: svn://10.0.0.236/trunk@8980 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-01 17:49:05 +00:00
peterl%netscape.com
6655d27071 remove text attribute processing
git-svn-id: svn://10.0.0.236/trunk@8586 18797224-902f-48f8-a5cc-f745e15eee43
1998-08-27 00:56:17 +00:00
troy%netscape.com
f5d7d63a42 Removed MoveTo() and SizeTo() member functions that were for debug
purposes, and are no longer needed


git-svn-id: svn://10.0.0.236/trunk@7571 18797224-902f-48f8-a5cc-f745e15eee43
1998-08-07 18:17:34 +00:00
buster%netscape.com
ef08d853f8 fixed this case: (an image tag with no width attribute) inside (a specified-width column) inside
(a nested table with specified width) inside (an auto-width column)
inside (a specified-width table).  Got that?
The problem was that we we not setting state correctly during incremental reflow
when the image returned its proper metrics after giving default metrics that
were for its ALT text.


git-svn-id: svn://10.0.0.236/trunk@7132 18797224-902f-48f8-a5cc-f745e15eee43
1998-08-03 20:27:59 +00:00
peterl%netscape.com
ac2ec1a340 rounding support
git-svn-id: svn://10.0.0.236/trunk@6999 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-31 23:34:45 +00:00
buster%netscape.com
7e38cceda4 we now paint backgrounds regardless of our content. Cell borders are
still conditionally painted based on whether the cell's content has
0=size or not.


git-svn-id: svn://10.0.0.236/trunk@6912 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-31 00:32:27 +00:00
buster%netscape.com
e61f20a237 empty cells do not render border or background color
git-svn-id: svn://10.0.0.236/trunk@6514 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-27 07:37:57 +00:00
peterl%netscape.com
590cae8cb1 factored backgound finding code to nsStyleUtil
git-svn-id: svn://10.0.0.236/trunk@6266 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-23 18:05:03 +00:00
troy%netscape.com
878c1d1350 Changed PaintBorder() to use the (x,y) that's passed in
git-svn-id: svn://10.0.0.236/trunk@6152 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-22 05:02:07 +00:00
troy%netscape.com
e727c63ed5 Changed nsCSSRendering::PaintBorder() so the entire rect is used
and not just the width and height


git-svn-id: svn://10.0.0.236/trunk@6136 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-22 02:46:00 +00:00
troy%netscape.com
23025b2d69 Commented out code that was forcing the border style to solid rather
than using whatever is in the default ua style sheet (inset)


git-svn-id: svn://10.0.0.236/trunk@6062 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-21 07:47:46 +00:00
buster%netscape.com
6ec4e2be88 fundemental overhaul of the BasicTableLayoutStrategy
We now cache lots of useful info in the colframes
we now properly account for margins just as uniform cellspacing


git-svn-id: svn://10.0.0.236/trunk@5754 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-16 23:23:31 +00:00
kipp%netscape.com
fe90cdc817 Fix incremental reflow bug
git-svn-id: svn://10.0.0.236/trunk@5748 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-16 22:15:02 +00:00
troy
eb7fa8a66e Changed API for CreateContinuingFrame and GetReflowMetrics to take
a reference to a nsIPresContext


git-svn-id: svn://10.0.0.236/trunk@5569 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-15 03:23:23 +00:00
troy
547dc8ae9b Changed Reflow() member function to take a reference to a nsIPresContext
instead of a pointer


git-svn-id: svn://10.0.0.236/trunk@5565 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-15 02:53:09 +00:00
buster
1a959d659a for Nav compatibility, 0-width cells do not have insets
git-svn-id: svn://10.0.0.236/trunk@5411 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-13 20:41:38 +00:00
buster
b481b4f1eb added Nav4 compatibility code for 0-width cells
git-svn-id: svn://10.0.0.236/trunk@5400 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-13 19:22:45 +00:00
buster
7e8cc1207b 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


git-svn-id: svn://10.0.0.236/trunk@5322 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-11 00:00:31 +00:00
troy
99f12e096a Deprecated the SetFirstContentOffset/SetLastContentOffset member
functions that take a nsIFrame*


git-svn-id: svn://10.0.0.236/trunk@5297 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-10 19:04:06 +00:00
buster
38ee9372e2 fixed 3 dumb bugs I introduced recently.
1. cellmap couldn't properly delete CellData because definition was unavailable
2. optimized table cells made taller wouldn't shrink when they should because we were not
remembering the previous desired height of the cell.
3. rows were placing cells on the left edge, and not adding in the left margin.


git-svn-id: svn://10.0.0.236/trunk@5082 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-07 01:06:51 +00:00
buster
ead43eee9f added support for "effective column widths", the width of a column pretending that spanning cells have no effect.
this gets us some more Nav4 compatibility.
several minor fixes.


git-svn-id: svn://10.0.0.236/trunk@5056 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-06 21:00:11 +00:00
buster
192406dc56 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.


git-svn-id: svn://10.0.0.236/trunk@4905 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-02 17:40:56 +00:00
buster
4028747412 cells no longer monkey with their available width based on attribute constraints.
The row does this work now. This makes table layout more properly top-down.


git-svn-id: svn://10.0.0.236/trunk@4670 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-29 20:38:22 +00:00
buster
545749c070 minor tweaks for table layout
git-svn-id: svn://10.0.0.236/trunk@4660 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-29 03:09:14 +00:00
buster
3b31c107da support for Nav4 compatibility -- auto-width cells with 0-width content are 1 pixel wide
git-svn-id: svn://10.0.0.236/trunk@4609 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-26 23:31:33 +00:00
buster
9c71826ed6 fixed some nested table bugs and made some minor adjustments to Kipp's new line layout code.
git-svn-id: svn://10.0.0.236/trunk@4550 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-26 00:48:44 +00:00
troy
344f630d8d Changed to make sure we link the child frame into the list of frames before
we reflow it


git-svn-id: svn://10.0.0.236/trunk@4420 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-24 16:35:21 +00:00
buster
fe4ba8793e lots of nested tables look much better
misc. nav4 compatibility enhancements
added the ability to QueryInterface for some specific table frame types


git-svn-id: svn://10.0.0.236/trunk@4348 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-23 23:23:21 +00:00
buster
dc23f3a90e Separated table content from table layout. This paves the way for XML/CSS-2 tables.
Lots and lots of optimizations.


git-svn-id: svn://10.0.0.236/trunk@3982 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-17 16:38:24 +00:00
buster
3609fb407a continuing work to separate content from frames
git-svn-id: svn://10.0.0.236/trunk@3656 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-11 15:46:37 +00:00
buster
0d87d412e5 some tentative steps towards content/frame separation in tables
git-svn-id: svn://10.0.0.236/trunk@3637 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-11 00:13:18 +00:00
troy
90ad65a58a Added nsIReflowCommand interface
git-svn-id: svn://10.0.0.236/trunk@3538 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-09 04:51:44 +00:00
peterl
bc184de5ad sync up to new style data apis
git-svn-id: svn://10.0.0.236/trunk@3322 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-05 06:09:09 +00:00
buster
a8657b2060 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


git-svn-id: svn://10.0.0.236/trunk@3301 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-05 02:36:25 +00:00
buster
c660db67ef 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


git-svn-id: svn://10.0.0.236/trunk@2982 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-03 00:43:53 +00:00
troy
003a885b86 Changed nsReflowState structs to be linked together
git-svn-id: svn://10.0.0.236/trunk@2643 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-29 20:36:05 +00:00
troy
ea3a30a606 Added WillReflow() calls around reflowing of child frame
git-svn-id: svn://10.0.0.236/trunk@2514 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 18:37:56 +00:00
peterl
e232225565 added visibility style attribute
git-svn-id: svn://10.0.0.236/trunk@2306 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:17:29 +00:00
kostello
b9b928f869 Updated Table Border code to render HTML3.2 compatible borders (no longer using the cool,
CSS borders).
Fixed Table but submitted by Isaac David Guedalia <daniel_sh@gezernet.co.il>.


git-svn-id: svn://10.0.0.236/trunk@2288 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 20:57:24 +00:00
troy
d2d4e15ea4 Merged ResizeReflow() and IncrementalReflow() into one Reflow() member function
git-svn-id: svn://10.0.0.236/trunk@2253 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-25 17:31:49 +00:00
kostello
997174b4d5 * Added Support for cell spacing
* NOTE: due to changes in the style system -- things won't look correct right away.


git-svn-id: svn://10.0.0.236/trunk@2149 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 23:43:18 +00:00
peterl
25861753fc Changed GetStyleData to use an enum instead of an nsID
git-svn-id: svn://10.0.0.236/trunk@2090 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 02:34:13 +00:00