Commit graph

264 commits

Author SHA1 Message Date
Benjamin Smedberg
73a6fab34b Backed out changeset 4c4df6ed1b41 - Bug 396185 - Make nsIFrame not inherit from nsISupports due to mochitest failures... these appear to be crashes in nsGenericHTMLElement::GetEditorInternal. 2009-01-09 11:35:24 -05:00
Benjamin Smedberg
802d1a10c7 Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

This patch locally causes two REFTEST-UNEXPECTED-PASS for Bidi stuff. It's possible that I accidentally fixed a bug, but I'm not sure, so I'm going to wait for the tinderboxes to confirm my local results.
2008-11-05 14:25:30 -05:00
L. David Baron
4872871d0b Fix some missed renames from bug 471356. r+sr=bzbarsky 2009-01-04 14:52:38 -05:00
Bernd
867fdf2cb0 bug 258377, make border collapsed tables to listen for dynamic border style changes r/sr=bzbarsky 2008-10-26 11:11:34 +01:00
Bernd
ecc3d8a9b7 CSS 2.1 empty-cell handling of the excotic cases, bug 76331, r/sr=roc 2008-09-13 16:38:29 +02:00
Graeme McCutcheon
bc94c13609 Bug 451252 - "Highlight All" find selection not visible in elements that have -moz-user-select: none set; r+sr=roc 2008-09-07 16:12:50 +02:00
dbaron@dbaron.org
7299d6225d Handle the vertical resizing in the first pass reflow correctly when we've previously done a special height reflow. b=381507 r=dholbert sr=roc 2007-06-18 16:19:39 -07:00
sharparrow1%yahoo.com
76a64e5c22 Bug 177805: Fix the use of units in Gecko. r+sr=roc 2007-02-07 07:46:44 +00:00
cvshook%sicking.cc
a39ff30284 Kill remainders of ns(XBL|HTML|XUL|Layout)Atoms. r/sr=jst b=368128 2007-01-30 00:06:41 +00:00
dbaron%dbaron.org
d8805141a6 Remove nsTableFrame::GetBorderPadding and related code. b=367458 r=bernd sr=roc 2007-01-27 22:22:24 +00:00
dbaron%dbaron.org
a74c1106d1 Address review comment on bug 9458 that depends on bug 367247 by making nsFrame::IsContainingBlock not check display type, but making it purely frame-class-based. 2007-01-27 18:45:35 +00:00
dbaron%dbaron.org
f6245f0ed9 Change the bulk of ascent (baseline) computation to happen on a virtual method on nsIFrame, and remove the redundant descent member from nsHTMLReflowMetrics, primarily to support having both first-line and last-line baselines. b=367332 r+sr=roc 2007-01-23 04:06:56 +00:00
bzbarsky%mit.edu
6705ad44ff Remove some unused table code. Bug 359139, r=bernd, sr=roc 2006-12-18 03:04:25 +00:00
mats.palmgren%bredband.net
6ee857d0b7 Make the CSS 'ch' length unit work in most cases. b=363573 r+sr=dbaron 2006-12-17 14:06:42 +00:00
dbaron%dbaron.org
d5af630c22 Better API for used padding/border/margin: remove deprecated Calc*For on nsStyleStructs and add GetUsed* to nsIFrame. b=332922 r+sr=roc 2006-12-13 23:04:57 +00:00
dbaron%dbaron.org
31f1898810 Bug 300030: Move intrinsic width computation out of nsIFrame::Reflow and into its own methods on nsIFrame. Replace reflow reasons, types, and commands with dirty bits/notifications. Thanks to bzbarsky for almost all of the HTML form controls (mozilla/layout/forms) changes, and many others for help testing and patching. For detailed commit logs, see REFLOW_YYYYMMDD_BRANCH, where YYYYMMDD is one of 20061031, 20060830, 20060603, 20060302, 20060119, 20051011, 20050804, 20050429, 20050315, 20050111, and 20041213. 2006-12-08 05:38:33 +00:00
roc+%cs.cmu.edu
0a10a79f62 Bug 330934. Set a nsIFrame's stylecontext in its constructor, to ensure that there's always one available for GetPresContext() to use even if Init hasn't been called. Patch by Marc Liddell, r+sr=roc 2006-03-26 21:30:36 +00:00
roc+%cs.cmu.edu
c2801ebbd7 Bug 328926. Remove aPresContext from nsIFrame::Init and nsIFrame::DidSetStyleContext. r+sr=roc, patch by Marc Liddell 2006-03-09 18:55:21 +00:00
bmlk%gmx.de
20b85ffac2 Make visibility:collapse work again after the display list change. Implement overflow handling and view synchronization for collapsed frames. bug 326551 r/sr=roc 2006-03-04 05:26:57 +00:00
roc+%cs.cmu.edu
77bca74243 Bug 317375. Reorganize frame painting and mouse event targeting around frame display lists. Some review from dbaron, lots of testing help from Martijn, Julien and others 2006-01-26 02:29:17 +00:00
roc+%cs.cmu.edu
520b30a7f7 Bug 313817. DeCOMtaminate more NS_New*Frame functions. r+sr=roc, patch by Marc Liddell 2005-11-04 02:38:33 +00:00
roc+%cs.cmu.edu
fed343c43a Bug 108310. Make GetFrameForPoint take frame-relative coordinates, not bogus relative-to-some-view-or-other, and simplify the signature. r+sr=roc, patch by Eli Friedman. 2005-09-19 02:15:54 +00:00
bzbarsky%mit.edu
cf64715ae5 Remove the pointless nsIContent arg of nsIFrame::AttributeChanged. Bug 281390,
patch by Vidar Braut Haarr <vhaarr+bmo@gmail.com>, r+sr=bzbarsky
2005-09-07 16:49:21 +00:00
dbaron%dbaron.org
06ee318b44 Fix too-much-overflow regression by making border-collapse cells store the full width of the border rather than just the inside half of it. Also make BCPixelSize 16-bit instead of 8-bit and use it in more places, and a little other cleanup. b=286794 r=bernd sr=roc a=brendan 2005-04-07 18:04:38 +00:00
dbaron%dbaron.org
d41e093134 Make overflow area for border-collapse table cells include the whole border (and maybe a pixel more) so that style change invalidation of border-collapse table cells will invalidate what got changed. b=271755 r=bernd sr=roc 2005-03-18 02:15:44 +00:00
bzbarsky%mit.edu
54d585f2af Remove prescontext args for some nsIFrame methods
(Append/Insert/Remove/ReplaceFrames) and for some methods in table land.  Patch
by Vidar Braut Haarr <bugmail@q1n.org>, r+sr=bzbarsky
2005-02-07 01:58:25 +00:00
cvshook%sicking.cc
e2081a89e6 Bug 236476: Change GetHTMLAttribute to GetParsedAttr. Also fixes bug 232706 by removing final uses of nsHTMLValue.
r=bz sr=jst
2005-01-25 00:02:58 +00:00
neil%parkwaycc.co.uk
74e2aa375a Bug 276100 GetOriginToView has unused PresContext argument p=bugmail@q1n.org r+sr=dbaron 2005-01-01 17:26:29 +00:00
bugzilla%arlen.demon.co.uk
3d7261604c Bug 270708 remove nsPresContext variable from AttributeChanged and cleaned up comment in nsIFrame.h
p=bugmail@q1n.org r=pkwarren sr=bzbarsky
2004-12-31 01:13:27 +00:00
bryner%brianryner.com
5c02a6978c Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc 2004-07-31 23:15:21 +00:00
roc+%cs.cmu.edu
b751c53c83 Bug 251501. Refactor handling where frames get inserted on content insertion. r+sr=dbaron 2004-07-18 12:02:53 +00:00
bmlk%gmx.de
de5b842be2 Remove unused functions bug 240559 r/sr =bzbarsky 2004-04-21 15:49:29 +00:00
gerv%gerv.net
708b56cff4 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:30:37 +00:00
bmlk%gmx.de
ea9e726b8b implement standards compliant (CSS2.1) table background rendering patch by fantasai@escape.com r=bernd sr=bz, dbaron 2004-03-09 06:48:35 +00:00
sicking%bigfoot.com
d5a23a72e6 Bug 232706: Remove unneccesary datatypes from nsHTMLValue and cleanup AttributeToString.
r=caillon sr=jst
2004-02-11 00:38:12 +00:00
uid502
d81619b4fa Bug 190735. DeCOMtaminate nsIFrame::GetFrameType. r+sr=bzbarsky 2003-10-31 20:19:18 +00:00
dbaron%dbaron.org
fb9a18f75a Remove unused and incorrect functions. b=212601 r+sr=jag 2003-07-13 23:25:41 +00:00
dbaron%dbaron.org
d85698fd40 Remove hint parameter from AttributeChanged methods and simplify style hint mechanism. b=211308 r+sr=bzbarsky 2003-07-11 21:16:12 +00:00
dbaron%dbaron.org
6dd68f3c64 Remove nsISizeOfHandler and associated SizeOf methods. b=106792 r=bzbarsky sr=jst 2003-02-22 15:34:38 +00:00
bryner%netscape.com
e43f5a49fd Remove nsIStyleContext (bug 114713), r/sr=dbaron. Changed lots of methods to use nsStyleContext* or already_AddRefed<nsStyleContext> as return values, depending on whether a reference is returned. Turn on nsRefPtr (bug 104346), and change nsDerivedSafe to not declare AddRef and Release explicitly virtual, r=jag, sr=dbaron. 2003-02-22 00:32:13 +00:00
caillon%returnzero.com
5ba9439c07 Correcting our background painting code per the latest CSS specs. By default, backgrounds should be painted to the border
area, and not the padding area as per the CSS 2 Errata, CSS2.1 and CSS3.  Also, implementing the CSS3 'background-clip'
and 'background-origin' properties (currently with -moz- prefixes) to control this behavior.
Bug 162252, r=dbaron sr=roc+moz
2002-10-08 10:24:53 +00:00
karnaze%netscape.com
bb4247183f bug 141021 - skip row reflow optimization of cell when the cell hasn't had a pass2 reflow. sr=waterson, r=bernd. 2002-05-09 14:44:02 +00:00
karnaze%netscape.com
253add7dbb bug 125543 - Prevent row groups from splitting in the reflow preceeding a special height reflow. Cells are only notified that they should observe a percent height element if the element is inside the table's cell. Percent height elements inside the body will have a height based on the page height when printing. sr=kin, r=alexsavulov. 2002-04-10 21:32:41 +00:00
karnaze%netscape.com
200dab5fc2 bug 127471 - construct the correct nsStyleBorder for border collapse cells, . sr=roc, r=alexsavulov, a=asa 2002-03-07 15:23:08 +00:00
karnaze%netscape.com
679c575202 bug 41262 - new table border collapsing code. sr=attinasi, r=alexsavulov. 2002-02-19 15:48:28 +00:00
karnaze%netscape.com
748ebbcd0d bug 113424 - mechanism for percent height frames inside table cells to receive special height reflow. sr=attinasi, r=alexsavulov 2001-12-07 14:51:12 +00:00
karnaze%netscape.com
3ed95c1e17 bug 51023 - reduce the size of table related frame classes. sr=kin. 2001-11-30 15:05:51 +00:00
karnaze%netscape.com
3cca3dc630 bug 111872 - Keep track of pct height content that overflows a cell on the 3rd pass reflow and Hide it. sr=attinasi, r=alexsavulov 2001-11-28 00:50:08 +00:00
bzbarsky%mit.edu
f2ee8260a0 Use NS_LITERAL_STRING instead of NS_ConvertASCIItoUCS2 where possible
(i.e. where the string is a literal).  Bug 104159, r=jag, sr=alecf
2001-11-14 01:33:42 +00:00
karnaze%netscape.com
8d3c3ea8b9 bug 97138 - rework of table, row group, row, cell height code. sr=attinasi, r=alexsavulov 2001-11-05 00:15:51 +00:00
gerv%gerv.net
4e12e44b2f Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089. 2001-09-28 20:14:13 +00:00
karnaze%netscape.com
e908dd0313 bug 68998 - added extra param to Paint, PaintChild, PaintChildren used by tables in standard mode. sr=waterson, r=alexsavulov. 2001-09-19 12:35:19 +00:00
hyatt%netscape.com
62d3de24fd Fix for 95475. r=jag, sr=ben, a=dbaron 2001-08-25 02:01:08 +00:00
jgaunt%netscape.com
9f2f88aa48 fix for bug 94768
r=smfr,leaf
sr=hyatt
2001-08-17 03:13:07 +00:00
hyatt%netscape.com
b135c5b55a Fix for 78695 (rule matching improvements). r/sr=attinasi, jst, waterson 2001-05-31 22:19:43 +00:00
evaughan%netscape.com
d9378cb8f0 Fix for bug #80902
-r jeff@tcbnetworks.com -sr waterson

Fix for bug #80505

-r aaronl, jgaunt -sr brendan
2001-05-17 23:52:32 +00:00
mjudge%netscape.com
eb8e69ab3e sr= waterson r= kin bug 26831 table cell selection changed to use borders not background. 2001-05-03 23:57:08 +00:00
karnaze%netscape.com
ce8ef82ad1 bug 59280 - better splitting of row groups/rows with rowspans. r=dcone. 2001-04-16 14:51:52 +00:00
karnaze%netscape.com
a81a269978 table reflow coalescing, table reflow face lift. sr=attinasi 2001-03-13 06:38:59 +00:00
pierre%netscape.com
9af01acf22 Reinstate my changes that were backed out 10 days ago. #43457 split nsStyleSpacing into 4 smaller structures: nsStyleBorder, nsStylePadding, nsStyleMargin, nsStyleOutline. r=attinasi,sr=buster. 2001-02-07 09:57:26 +00:00
karnaze%netscape.com
623b6521ad better table reflow debugging including support for elapsed time. sr=buster. 2001-01-25 15:55:51 +00:00
mcafee%netscape.com
7ecf530933 Backing out pierre's change from 1/20 for performance reasons (66263). r=attinasi, a=granrose, phil 2001-01-25 02:58:12 +00:00
pierre%netscape.com
62bf433a35 #43457 split nsStyleSpacing into 4 smaller structures: nsStyleBorder, nsStylePadding, nsStyleMargin, nsStyleOutline. Review=attinasi. Pending Approval: buster. 2001-01-20 22:46:54 +00:00
karnaze%netscape.com
03bd50cb8d bug 57828 - better handling of nowrap in table cell. sr=buster, r=attinasi. 2001-01-11 23:03:37 +00:00
karnaze%netscape.com
4d56bbda59 bug 40828 - call DidSetStyleContext when reflow a cell unconstrained. a=buster, r=dcone. 2000-11-15 16:01:26 +00:00
rbs%maths.uq.edu.au
fc667ea4ee Enable the code to support for 'vertical-align: baseline' in table-cells. bug 10207. a:waterson@mozilla.org. was r:karnaze@netscape.com. 2000-07-28 09:19:26 +00:00
rbs%maths.uq.edu.au
f522c03515 [#ifdef MOZ_MATHML: not yet part of default build]. Add support for 'vertical-align: baseline' in table-cells. bug 10207. r:karnaze@netscape.com. a:waterson@mozilla.org 2000-06-05 08:25:11 +00:00
cmanske%netscape.com
e7d0908c04 Added support for Ctrl+Shift+mouseclick to select block of cells. Rewrote nsITableLayout::nsGetCellData() to be much more efficient, eliminating a method in the process. Implemented nsTableCellFrame::Get[Previous|Next]CellInColumn for cursor key navigation in tables. r=mjudge,karnaze. 2000-03-23 04:24:58 +00:00
dbaron%fas.harvard.edu
87e19c9cef Fix event targetting bugs by using paint layers in GetFrameForPoint, testing for visibility, and trying GetFrameForPoint on additional views if one fails. r=joki@netscape.com(, hyatt@netscape.com) b=12232,20051,21304,24474,26785, and remaining issues from 23161. 2000-03-22 02:43:08 +00:00
karnaze%netscape.com
49f3412344 bug 10636, 15499(partial) - correctly get margin,border,padding from reflow info. calculate it for percentage padding when reflow state not available. r=troy 2000-02-12 01:55:40 +00:00
karnaze%netscape.com
2e709d5d79 bug 8524 - don't use -moz-bg-inset in standard mode. r=troy
bug 10269 - renamed RequiresPass1Layout to IsAutoLayout and have it force a fixed layout table (not tree) to be auto layout if the table is auto width.
2000-02-12 00:58:38 +00:00
karnaze%netscape.com
aebdc7d5fe bug 22246 - row/col span changes on cell alter cell map and reflow table. r=kmcclusk 2000-01-04 05:31:56 +00:00
troy%netscape.com
b3f6ab293f Reduced size of table cell member data by 4 bytes by only storing the
maximum width and not both the width and height. The height was never used
so this wans't an issue
1999-12-24 03:46:21 +00:00
hyatt%netscape.com
de2eaede42 Implementing a generalized recycler and arena for all layout frames. Hoping to improve
bug #9489.  Should also definitely fix bug #15916. r=troy
1999-12-04 23:49:50 +00:00
tbogard%aol.net
af1ce8d410 Changed nsIPresContext& to nsIPresContext*. Changed nsEventStatus& to nsEventStatus*. Now more compatible with XPIDL. a=vidur r=scc 1999-11-24 06:03:41 +00:00
dmose%mozilla.org
5312eacf8c updated license boilerplate to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:40:37 +00:00
troy%netscape.com
1585a751fb Moved a bunch of stuff out to a nsIFrameDebug interface 1999-11-01 22:12:45 +00:00
troy%netscape.com
87afecabc0 Changed SetView/GetView to take an additional argument which is the
pres context
1999-10-26 04:44:41 +00:00
troy%netscape.com
5d86678e7b r=karnaze@netscape.com
Save 8 bytes per table cell frame by eliminating mCollapseOffset and
using a frame property instead.
1999-10-22 02:06:22 +00:00
troy%netscape.com
5230acb007 Removed unused 4-byte "mMaxElementSize" member data 1999-10-21 20:51:04 +00:00
karnaze%netscape.com
886b682461 Remove caching cell spacing as margin on cells, reducing 16 bytes and avoiding potentially unique style contexts; simplified cell margin calculations; r=troy 1999-10-20 14:18:56 +00:00
troy%netscape.com
502629f011 r=karnaze@netscape.com Cc'd hyatt@netscape.com
Space optimization. mBorderEdges is no longer an embedded object. Now it's
allocated when needed (for collapsing border model tables only). This saves
80 bytes per table cell frame for the normal HTML case of adjacent border
model
1999-10-17 03:30:11 +00:00
troy%netscape.com
5ab2223218 Space optimization, r=karnaze@netscape.com Cc'd hyatt@netscape.com
Save 4 bytes by eliminating the mCalculated data member which wasn't being used
1999-10-16 16:17:07 +00:00
troy%netscape.com
f80550c400 Space savings. r=karnaze@netscape.com Cc'd hyatt@netscape.com
Eliminated member data mIsContentEmpty and now we use a frame state bit
instead. This saves 4 bytes of space per table cell frame
1999-10-15 03:14:59 +00:00
slamm%netscape.com
26d787fa8c Backout troy's last set of changes. Caused bug #15790, 'opening bookmarks window and expanding mail folders crashes'. r=waterson. 1999-10-08 18:52:19 +00:00
troy%netscape.com
f6340feb91 Space reductions, r=karnaze@netscape.com
Eliminated one data member, moved one to flag frame state, and changed mBorderEdges
to be heap allocated (only for collapsing border model)
1999-10-07 20:38:50 +00:00
karnaze%netscape.com
498bb5f780 bug 12910 - SetPass1MaxElementSize considers nowrap on cell 1999-09-30 14:11:16 +00:00
karnaze%netscape.com
5b0679f4bf bugs 965, 1053, 1163 - improved handling of borders; bug 10216 align, text-align on caption. 1999-09-02 00:07:14 +00:00
kipp%netscape.com
7fe2679e86 Updated SizeOf methods to not waste space when doing a non-debug build 1999-09-01 01:02:16 +00:00
kipp%netscape.com
f808fbb193 Reimplemented SizeOf methods in some of the frame classes; partial rework of first-line handling snapshot 1999-08-31 03:09:40 +00:00
troy%netscape.com
20364c9f5a Fix for bug #12592. Optimized style change reflow commands targeted at
a cell frame
1999-08-29 04:18:00 +00:00
karnaze%netscape.com
7bad0d49ba Added new incremental reflow methods.
CellData keeps track of row versus col spans.
nsColFrame keeps track of what cell contributed to constrained width.
nsCellMap::GetCellFrameAt replace with GetCellInfoAt
simplified nsTableCellFrame::RecalcLayoutData and removed FindLargestMargin, CalculateMargins, CalculateMargins
simplified nsTableFrame::RecalcLayoutData and removed AppendLayoutData
Added gsDebugReflow capability, remove all existing debug printf
1999-08-19 19:52:37 +00:00
cmanske%netscape.com
cb1417e9fa Added method to nsITableCellLayout. Fixed QI bug 1999-08-04 02:04:45 +00:00
troy%netscape.com
7c6dd3bfcb Reflow command cleanup 1999-08-01 22:21:03 +00:00
cmanske%netscape.com
5a6781c3b8 Added nsITableLayout::GetTableSize() to get number of rows and columns in table. Fixup up comments for new methods 1999-08-01 16:20:14 +00:00
karnaze%netscape.com
a88b1a3f85 new nsCellMap, BasicTableLayoutStrategy, plus various fixes to table
frames while testing the new cell map and strategy
1999-07-28 08:09:02 +00:00
mjudge%netscape.com
864e061209 new table selection code drag inside and outside of tables with ease. added some overriding methods to nsTableCellFrame and nsTableFrame to make selection "draw" correctly for those containers. 1999-06-01 23:04:13 +00:00
karnaze%netscape.com
ebeb68d601 support for css padding in table cells 1999-05-18 05:18:16 +00:00
kipp%netscape.com
4846f41f1f Reworked frame factory methods; fixed bug 4519 1999-05-11 22:03:29 +00:00
ramiro%netscape.com
ce86e7b16e Latest AIX fixes. (waqar@netscape.com).
When doing the multiple inheritance thing, explicitly give the publicness
for each superclass.
1999-03-08 15:13:54 +00:00
warren%netscape.com
a60a14636f Fixed multiple mRefCnt problem. 1999-03-06 03:56:24 +00:00
troy%netscape.com
3bdf672129 Removed nsIFrame::CreateContinuingFrame() 1999-02-25 05:31:15 +00:00
troy%netscape.com
47cbdb1e9d Added frame type atoms for several table frame classes 1999-02-24 05:54:31 +00:00
troy%netscape.com
2f913ac8b5 Changed GetRowIndex() so that for continued cell frames the row index is
that of the cell's first-in-flow
1999-02-21 19:55:22 +00:00
karnaze%netscape.com
a43b2445da collapsing rows, row groups, cols, col groups 1999-02-11 06:22:33 +00:00
buster%netscape.com
178ad83c45 changed getters to be XP_COM-like, with out-params instead of return values.
this is so these getters can be bound to an XPCOM interface, nsITableCellLayout
1999-02-11 01:16:28 +00:00
troy%netscape.com
c85f9efd2a Changed GetParent() to use ** instead of *& 1999-02-10 01:36:30 +00:00
kipp%netscape.com
7f96144059 Spanked away SizeOf methods and nsIListFilter 1999-01-16 00:00:50 +00:00
troy%netscape.com
036e6852f2 Removed the content-parent frame pointer. Now we just have the one geometric
parent
1999-01-14 05:16:23 +00:00
buster%netscape.com
1b814a3efe preliminary work for cell inheritence of valign and halign attributes from col(group) and row(group)
according to css 2 spec
1999-01-03 19:22:40 +00:00
buster%netscape.com
714c427896 collapsing border computation and conflict resolution 1998-12-30 06:48:15 +00:00
buster%netscape.com
d87ab21022 WIP for collapsing borders 1998-12-23 15:47:43 +00:00
buster%netscape.com
914c880651 collapsing borders now do rounding of odd-thickness borders correctly
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.
1998-12-21 18:54:23 +00:00
buster%netscape.com
d1779f0342 beginnings of collapsing borders now implemented. Doesn't work for spanning cells yet,
and doesn't measure borders where the width changes along a shared edge yet.
1998-12-21 06:38:18 +00:00
kipp%netscape.com
c29e5116c7 Revised frame Paint API 1998-12-18 15:54:23 +00:00
buster%netscape.com
7f8a8688c4 WIP on collapsing borders 1998-12-16 17:05:14 +00:00
buster%netscape.com
d35a765d2c clean up, removed some obsolete methods 1998-12-16 06:33:15 +00:00
troy%netscape.com
165f9e859f Removed SetColIndex() which wasn't being used 1998-12-16 01:35:25 +00:00
buster%netscape.com
b7ab7be458 support for CSS2 style property "empty-cells" 1998-12-10 19:57:42 +00:00
troy%netscape.com
4a0f9cea8f Moved logic that created a BODY frame that forms the cell's content from the
table frame code to the frame construction code
1998-12-04 02:08:51 +00:00
buster%netscape.com
23112ce100 minor optimizations and cleanup. removed constructors that did nothing. 1998-12-03 20:19:01 +00:00
troy%netscape.com
2a4b2c503f Added Init() member function to nsIFrame 1998-12-03 06:31:43 +00:00
buster%netscape.com
4c98e2689d implemented table height algorithms. also made a slight modification to
the way a table finds its container's width.
1998-11-20 01:01:25 +00:00
kipp%netscape.com
a6926809f0 Added DumpRegressionData; revised ListTag; added GetFrameName 1998-11-19 17:22:29 +00:00
buster%netscape.com
ce19ab8f3c support for frame and rules attribute 1998-11-11 19:56:02 +00:00
troy%netscape.com
527ee073f8 Renamed Init() to SetInitialChildList() and added an additional parameter
for the name of the child list
1998-11-10 06:05:32 +00:00
buster%netscape.com
f2bd19c65b various small fixes and clean up 1998-11-05 21:42:46 +00:00
buster%netscape.com
03cad6390d some extremely preliminary work for styleChanged incremental reflow 1998-10-30 07:57:44 +00:00
buster%netscape.com
e220aee18d all containers now decend from nsHTMLContainerFrame
all "unknown frame" incremental reflow support methods now
replaced with nsHTMLContainerFrame::AddFrame and ::RemoveFrame
1998-10-20 17:45:07 +00:00
spider%netscape.com
0cf90ba175 Add EOL to get to compile on Solaris 1998-10-14 22:23:26 +00:00
buster%netscape.com
c81a22ecf1 all frames properly setting ascent and descent values for reflow
WIP incremental reflow in nsTableOuterFrame
1998-10-08 15:34:48 +00:00
kipp%netscape.com
186c55bec0 use new body factory method 1998-10-06 00:44:35 +00:00
buster%netscape.com
395bcf058e minor interface cleanup 1998-10-02 20:36:35 +00:00
troy%netscape.com
7aceb4270d Eliminated nsIRunaround interface, and folded space manager parameter into
nsHTMLReflowState structure
1998-10-02 04:10:00 +00:00
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
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
peterl%netscape.com
12d7adf11e remove text attribute processing 1998-08-27 00:56:17 +00:00
troy%netscape.com
a09b9a211e Removed MoveTo() and SizeTo() member functions that were for debug
purposes, and are no longer needed
1998-08-07 18:17:34 +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
buster
3e596fc26a 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
1998-07-11 00:00:31 +00:00
buster
72142b30f4 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.
1998-07-07 01:06:51 +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
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
peterl
613e577b7d added visibility style attribute 1998-05-26 23:17:29 +00:00