default cellspacing and cellpadding now comes from the table frame itself
other frames on longer look at the "tableStyle" struct for these values
git-svn-id: svn://10.0.0.236/trunk@15824 18797224-902f-48f8-a5cc-f745e15eee43
types, and mColGroups. Besides being cleaner and easier to maintain, this should speed some things up slightly
because I don't have to check display types every time I iterate through colgroup frames. I *know*
mColGroups contains only colgroups. I might do the same for rowgroups (that is, keep unknown frame types
in their own list as well.) But that's optional.
the inner table frame used to incorrectly create actual content objects for anonymous colgroups and cols. Now,
it just creates frames as appropriate, not content. To support this, I added some pseudo style contexts and
related atoms.
git-svn-id: svn://10.0.0.236/trunk@15704 18797224-902f-48f8-a5cc-f745e15eee43
C++ compiler is strict about getting 'const' right. Most of the changes
are to add 'const' to the type casts for the second argument of the
GetStyleData method, which wants a const reference.
git-svn-id: svn://10.0.0.236/trunk@15625 18797224-902f-48f8-a5cc-f745e15eee43
1. width=0 is treated as width=auto, not width=min
2. empty cells <td></td> are assigned a width of (2*borderWidth + 2*cellspacing + 3) pixels
The "3" is a fudge factor added by Nav and IE.
git-svn-id: svn://10.0.0.236/trunk@15309 18797224-902f-48f8-a5cc-f745e15eee43
the problem was the way table layout apportioned height from a rowspanning cell.
Now, we do 2 things correctly:
1) we handle rows with rowspanning cells and no other cells.
2) we divide the height of a rowspanning cell proportionately to the rows spanned, where the proportion is defined by
the max height of a cell in that row that has no effective rowspan.
the partial fix for bug 1431 has to do with dividing width between percent-width and fixed-width columns in the same
table. You won't see any better layout for this page (ww.boston.com) as a result of the code I added. The rest of this
fix is a bit risky, so I'm waiting until after stability push.
git-svn-id: svn://10.0.0.236/trunk@15257 18797224-902f-48f8-a5cc-f745e15eee43
care to only remove makefiles affailiated with building nglayout. I have also verified that
the build at this point in time succesfully builds with autoconf.
If you must recover one of these makefiles, you can use the static tag STATIC_MAKEFILES.
If I removed a makefile that you need, please e-mail cyeh@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@15084 18797224-902f-48f8-a5cc-f745e15eee43
and/or to the width attribute on the table itself), the rule is to try to give the column the largest value
assigned to it by any cell intersecting that column.
Separate storage is maintained for a column's natural desired width (width from any source other than a cell
with a colspan) and the maximum contribution to the column's width from any cell with a colspan.
git-svn-id: svn://10.0.0.236/trunk@14732 18797224-902f-48f8-a5cc-f745e15eee43
colgroup pseudo frame for cols inserted directly into a table. More like this to come...
git-svn-id: svn://10.0.0.236/trunk@14512 18797224-902f-48f8-a5cc-f745e15eee43
FirstChild() now takes an additional argument which is the name of the
child list.
git-svn-id: svn://10.0.0.236/trunk@14289 18797224-902f-48f8-a5cc-f745e15eee43
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.
git-svn-id: svn://10.0.0.236/trunk@14218 18797224-902f-48f8-a5cc-f745e15eee43
not like specified width (which you might logically expect since all column widths are specified, but sadly that's
not the way Nav or IE interprets this case. )
nsTableFrame's use of IsPseudoFrame has been removed.
git-svn-id: svn://10.0.0.236/trunk@14095 18797224-902f-48f8-a5cc-f745e15eee43