53 Commits

Author SHA1 Message Date
jdunn%netscape.com
01a246e76f AIX's new compiler, xlC5.x, doesn't allow the use of "friend" to declare
a function prototype.  So we have to decare the function and then
declare it a friend.  When Default arguments are used, they need to
be specified in the function prototype and NOT in the friend declaration.
# 43311
r=dbaron@fas.harvard.edu


git-svn-id: svn://10.0.0.236/trunk@111825 18797224-902f-48f8-a5cc-f745e15eee43
2002-01-10 14:16:05 +00:00
bzbarsky%mit.edu
068756d821 Use NS_LITERAL_STRING instead of NS_ConvertASCIItoUCS2 where possible
(i.e. where the string is a literal).  Bug 104159, r=jag, sr=alecf


git-svn-id: svn://10.0.0.236/trunk@107987 18797224-902f-48f8-a5cc-f745e15eee43
2001-11-14 01:33:42 +00:00
dbaron%fas.harvard.edu
8b3489a026 Bug 86947:
Make the line list doubly linked and access it through a list class and iterators.
Stop recomputing margins on all of the children of each block in the reflow chain (which causes O(N^2) state recovery during incremental reflow).  Instead, add a second dirty bit to the lines and walk backwards through the line list to recompute vertical margins only when either dirty bit is set and the previous line was not reflowed.  Add nsIFrame::IsEmpty to identify frames through which margins collapse.
Fix O(N^2) propagation of float damage by maintaining a set of intervals damaged by floats (bug 61962) and be sure to damage the correct areas (bug 48138).
Introduce nsCollapsingMargin to do correct collapsing of combinations of positive and negative margins (bug 50142).
Clean up some odds and ends and fix another smaller O(N^2) problem in nsBlockFrame::AddFrames.
r=attinasi, rbs  sr=waterson


git-svn-id: svn://10.0.0.236/trunk@106224 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-25 01:08:40 +00:00
gerv%gerv.net
13afb6d0f9 Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089.
git-svn-id: svn://10.0.0.236/trunk@104119 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-28 20:14:13 +00:00
karnaze%netscape.com
1540a4c12e bug 68998 - added extra param to Paint, PaintChild, PaintChildren used by tables in standard mode. sr=waterson, r=alexsavulov.
git-svn-id: svn://10.0.0.236/trunk@103193 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-19 12:35:19 +00:00
hyatt%netscape.com
7e24c61109 Implementing a generalized recycler and arena for all layout frames. Hoping to improve
bug #9489.  Should also definitely fix bug #15916. r=troy


git-svn-id: svn://10.0.0.236/trunk@55321 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 23:49:50 +00:00
tbogard%aol.net
ae5a81e394 Changed nsIPresContext& to nsIPresContext*. Changed nsEventStatus& to nsEventStatus*. Now more compatible with XPIDL. a=vidur r=scc
git-svn-id: svn://10.0.0.236/trunk@54392 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 06:03:41 +00:00
dmose%mozilla.org
92d791b7b0 updated license boilerplate to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@52908 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:40:37 +00:00
troy%netscape.com
3513334988 Moved a bunch of stuff out to a nsIFrameDebug interface
git-svn-id: svn://10.0.0.236/trunk@52427 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-01 22:12:45 +00:00
troy%netscape.com
bd46e7911f Changed SetView/GetView to take an additional argument which is the
pres context


git-svn-id: svn://10.0.0.236/trunk@51822 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-26 04:44:41 +00:00
kipp%netscape.com
eea3ab916a Updated SizeOf methods to not waste space when doing a non-debug build
git-svn-id: svn://10.0.0.236/trunk@45397 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-01 01:02:16 +00:00
kipp%netscape.com
c9002f20df Reimplemented SizeOf methods in some of the frame classes; partial rework of first-line handling snapshot
git-svn-id: svn://10.0.0.236/trunk@45274 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-31 03:09:40 +00:00
kipp%netscape.com
ccceae02c3 Implement List method
git-svn-id: svn://10.0.0.236/trunk@29987 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-03 20:54:24 +00:00
troy%netscape.com
0e0466e34b Removed ContentChanged() and AttributeChanged() which are no longer need
now that GetPrimaryFrameFor() always returns the out-of-flow frame


git-svn-id: svn://10.0.0.236/trunk@29117 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-25 16:59:39 +00:00
troy%netscape.com
87a1db0805 Added GetFrameType() and renamed GetAnchoredItem() to GetOutOfFrameFlow()
git-svn-id: svn://10.0.0.236/trunk@28837 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-23 14:34:48 +00:00
kipp%netscape.com
eaee82d4b3 Revised frame Paint API
git-svn-id: svn://10.0.0.236/trunk@16666 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-18 15:54:23 +00:00
troy%netscape.com
01f27b2a31 Added Init() member function to nsIFrame
git-svn-id: svn://10.0.0.236/trunk@15682 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-03 06:31:43 +00:00
kipp%netscape.com
b527c7f026 Added DumpRegressionData; revised ListTag; added GetFrameName
git-svn-id: svn://10.0.0.236/trunk@14946 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-19 17:22:29 +00:00
kipp%netscape.com
e8e77859cb Removed DidReflow hack again
git-svn-id: svn://10.0.0.236/trunk@14770 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-17 01:03:41 +00:00
troy%netscape.com
497e834006 Reinstated hack to have the placeholder frame forward the DidReflow() notification
to the floated frame. Needed until the block frame properly handles FirstChild()
and returns the list of floated frames


git-svn-id: svn://10.0.0.236/trunk@14737 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-16 18:33:21 +00:00
kipp%netscape.com
8a35c19883 Removed hacks that were mostly block-frame bug workarounds
git-svn-id: svn://10.0.0.236/trunk@14671 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-14 19:26:57 +00:00
troy%netscape.com
433ac3b15e Added a hack to make sure that the floated frame gets a DidReflow notification
git-svn-id: svn://10.0.0.236/trunk@14216 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-07 00:03:45 +00:00
troy%netscape.com
b0645e2d20 Added some temporary code to ensure that the floated frame is deleted
git-svn-id: svn://10.0.0.236/trunk@13939 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-02 23:57:25 +00:00
troy%netscape.com
576757f155 Removed nsIInlineReflow and folded it into nsIHTMLReflow
git-svn-id: svn://10.0.0.236/trunk@11847 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-03 04:28:05 +00:00
troy%netscape.com
e191c422d9 Eliminated nsIRunaround interface, and folded space manager parameter into
nsHTMLReflowState structure


git-svn-id: svn://10.0.0.236/trunk@11749 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-02 04:10:00 +00:00
troy%netscape.com
7eac0bfdac Separated reflow process out of nsIFrame and into nsIFrameReflow. Also
added nsIHTMLReflow, which is an HTML specific reflow interface


git-svn-id: svn://10.0.0.236/trunk@11646 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-01 04:46:11 +00:00
peterl%netscape.com
9b94d90eca moved attribute change code to style sheete
cleaned up content change api


git-svn-id: svn://10.0.0.236/trunk@11490 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-29 23:48:07 +00:00
vidur%netscape.com
91958a5028 Fixed image.src=. Forwarded AttributeChanged notifications from nsPlaceholderFrame to its anchored item. Got rid of redundant calls to AttributeChanged.
git-svn-id: svn://10.0.0.236/trunk@11271 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-28 21:22:31 +00:00
troy%netscape.com
8d229a5a6e Moved ContentReplaced() handler code to style system
git-svn-id: svn://10.0.0.236/trunk@11108 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-25 22:47:00 +00:00
troy%netscape.com
be32dfbcc4 Moved ContentDeleted() document notification code to the style system which
generates the reflow command


git-svn-id: svn://10.0.0.236/trunk@11020 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-25 05:13:06 +00:00
troy%netscape.com
025ab65ab4 Removed some XXX CONSTRUCTION code that was work-in-progress, but is
no longer needed


git-svn-id: svn://10.0.0.236/trunk@10884 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-24 03:49:45 +00:00
troy%netscape.com
b60923ad33 Removed content delegates
git-svn-id: svn://10.0.0.236/trunk@10417 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-18 17:18:37 +00:00
troy%netscape.com
65a64892ea Removed some code that's no longer needed with the new frame construction code
git-svn-id: svn://10.0.0.236/trunk@10325 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-18 00:04:55 +00:00
kipp%netscape.com
6a52b74171 Removed css/layout directory
git-svn-id: svn://10.0.0.236/trunk@10015 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-15 00:19:49 +00:00
troy%netscape.com
6dc2d7e4d2 Container floated elements are now wrapped in a BODY frame
git-svn-id: svn://10.0.0.236/trunk@9967 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-14 04:01:08 +00:00
troy%netscape.com
4e1f178389 Changed new frame construction code to handle floaters
git-svn-id: svn://10.0.0.236/trunk@9811 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-11 04:13:29 +00:00
troy%netscape.com
0c4b9521d5 Phase one of frame construction changes
git-svn-id: svn://10.0.0.236/trunk@9742 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-10 19:32:14 +00:00
kipp%netscape.com
230a9dbfac Made placeholders implement nsIInlineReflow so that their existance wouldn't screw up whitespace compression
git-svn-id: svn://10.0.0.236/trunk@6692 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-29 04:05:49 +00:00
kipp%netscape.com
4782a5dbe9 Implement paint method
git-svn-id: svn://10.0.0.236/trunk@5765 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-16 23:32:04 +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
troy
7002f99964 Changed anchor frames to forward content notifications to the real frame
git-svn-id: svn://10.0.0.236/trunk@4734 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-30 21:35:07 +00:00
troy
9e702bf0fa Changed block to do the initial reflow of a floater. Also fixed a problem
with floated tables crashing


git-svn-id: svn://10.0.0.236/trunk@3591 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-10 05:33:38 +00:00
kipp
5ddead2b78 Work around body bug with placeholder code to avoid dup free's of placeholder's child frame
git-svn-id: svn://10.0.0.236/trunk@3257 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-04 21:04:50 +00:00
kipp
e836ab5f4c Made a subclass of nsContainerFrame to deal with PropogateContentOffsets because placeholders contain pseudo-frames
git-svn-id: svn://10.0.0.236/trunk@3226 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-04 17:52:02 +00:00
troy
3613e8b151 Work in progress for floaters to handle percentage based
width/height


git-svn-id: svn://10.0.0.236/trunk@2833 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-01 19:56:58 +00:00
troy
4423b06d16 Added 'ns' prefix to class name
git-svn-id: svn://10.0.0.236/trunk@2468 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-28 02:37:37 +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
troy
5a839584c7 Change to nsIFrame API
git-svn-id: svn://10.0.0.236/trunk@1441 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 04:17:56 +00:00
kipp
7653fb2f79 Added container methods for the singly contained frame
git-svn-id: svn://10.0.0.236/trunk@1437 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 01:31:22 +00:00
troy
22a5d2831e Frames no longet store the content index-in-parent
git-svn-id: svn://10.0.0.236/trunk@1169 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 23:56:50 +00:00