One example of the crash is changing the style of a cell via DOM.
Also fixed an error in the API of nsTableColFrame
git-svn-id: svn://10.0.0.236/trunk@19028 18797224-902f-48f8-a5cc-f745e15eee43
also removed nsTableFrame::QueryInterface() because it was just extraneous, and it made
an assumption about what class nsTableFrame derives from. Let the vtable do its work...
git-svn-id: svn://10.0.0.236/trunk@18806 18797224-902f-48f8-a5cc-f745e15eee43
frames and row frames (because internal table elements don't have margins)
git-svn-id: svn://10.0.0.236/trunk@17126 18797224-902f-48f8-a5cc-f745e15eee43
at the pixel level. The odd pixel is always given to the right and bottom
cell borders whenever possible, and to the top and left table border otherwise.
git-svn-id: svn://10.0.0.236/trunk@16761 18797224-902f-48f8-a5cc-f745e15eee43
and doesn't measure borders where the width changes along a shared edge yet.
git-svn-id: svn://10.0.0.236/trunk@16742 18797224-902f-48f8-a5cc-f745e15eee43
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
fixed some rotting bits in table frame classes having to do with breaking tables
git-svn-id: svn://10.0.0.236/trunk@13210 18797224-902f-48f8-a5cc-f745e15eee43
all "unknown frame" incremental reflow support methods now
replaced with nsHTMLContainerFrame::AddFrame and ::RemoveFrame
git-svn-id: svn://10.0.0.236/trunk@13209 18797224-902f-48f8-a5cc-f745e15eee43
the layout strategy can now query the outer frame for the caption min width,
and use it to expand the table if necessary
did some related cleanup while I was in there.
git-svn-id: svn://10.0.0.236/trunk@11473 18797224-902f-48f8-a5cc-f745e15eee43
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.
git-svn-id: svn://10.0.0.236/trunk@10922 18797224-902f-48f8-a5cc-f745e15eee43