Commit Graph

105 Commits

Author SHA1 Message Date
waterson@netscape.com
d05e65aea2 Bug 115113. Eliminate nsIReflowCommand, and just use nsHTMLReflowCommand directly. r=karnaze, sr=attinasi. 2001-12-17 22:39:59 +00:00
dbaron@fas.harvard.edu
d3f01c8c10 Remove unnecessary XPCOM interface around nsSpaceManager. b=102453 r=jag sr=waterson 2001-10-26 05:06:07 +00:00
dbaron@fas.harvard.edu
4b1de618fc 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
2001-10-25 01:08:40 +00:00
dbaron@fas.harvard.edu
d52d3d978e Replace uses of overloaded |fputs| and most uses of |ns[C]String::ToCString|. b=104763 r=jag rs=scc 2001-10-16 03:53:44 +00:00
gerv@gerv.net
58d409fba9 Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089. 2001-09-28 20:14:13 +00:00
dbaron@fas.harvard.edu
b46d1c0dfe Make the width of floats with |width: auto| depend only on the width of the containing block and the contents of the float and not on the available space. Remove the loop calling ReflowFloater at different positions that is no longer needed, and remove the caching of the max element size for that loop that was not being invalidated correctly between reflows. Fix handling of margin, border, and padding for computation of available width for |width: auto| floaters. r=attinasi sr=waterson b= 85876, 82314, 82315, 85216, 85874, 86746 2001-07-19 02:33:43 +00:00
waterson@netscape.com
888d51e4cf Bug 59200. Merge floater reflow and placement into FlowAndPlaceFloater() to deal with the fact that a floater may need to be reflowed as its 'pushed' to a new location. For auto-width floaters, ensure that the floater is not flowed at a width less than its max-element-size. Enforce CSS2 section 9.5.1 rule [2] by maintaining mLastFloaterY in the reflow state. r=rbs, sr=attinasi. 2001-05-21 23:03:46 +00:00
erik@netscape.com
c10f4af3af bug 74587; author=simon@softel.co.il; r=attinasi; sr=erik; fix for a
crasher in IBMBIDI-ifdeffed code for bidi documents
2001-05-02 22:13:29 +00:00
erik@netscape.com
c99d7041c1 fixing build bustage in IBMBIDI ifdef on Mac 2001-04-16 21:32:19 +00:00
erik@netscape.com
d24bee0abc bug 71370; author=simon@softel.co.il; r=attinasi; sr=erik; implement bidi
(bidirectional text) for languages such as Arabic and Hebrew; from IBM bidi
project; not part of build yet (due to #ifdef IBMBIDI)
2001-03-09 03:29:00 +00:00
dbaron@fas.harvard.edu
15267f2b5c Remove trailing semicolons after all uses of MOZ_DECL_CTOR_COUNTER to quiet build warnings on Mac. b=60415 a=brendan@mozilla.org 2001-01-27 23:06:33 +00:00
rods@netscape.com
c0ed0d0271 removing most all NS_DEFINE_IID and replacing them with NS_GET_IID macros
Bug 61274, r=buster sr=waterson
2001-01-04 20:44:42 +00:00
dbaron@fas.harvard.edu
6fc3f9c294 Make destructors that exist only for MOZ_COUNT_DTOR be #ifdef NS_BUILD_REFCNT_LOGGING instead of #ifdef DEBUG so the leak stats on optimized builds are correct. r=waterson@netscape.com sr=brendan@mozilla.org b=62421 2000-12-16 18:56:06 +00:00
warren@netscape.com
0462ea4ce8 Bug 47207. Backing out logging/PRINTF changes until we can fix stopwatch.h, introduce double parens, etc. 2000-10-28 22:17:53 +00:00
warren@netscape.com
7730ce0cd3 Bug 47207. Changing printf to PRINTF to use new logging facility. r=valeski,sr=waterson 2000-10-27 22:43:51 +00:00
anthonyd@netscape.com
8a44359dde warning fixes for linux. r: mjudge a: beppe 2000-06-16 22:28:10 +00:00
anthonyd@netscape.com
9c9e0c5a15 avoiding confusion between line iterator between layout and navigation.
if you want a line iterator for navigation you must explicitly ask for one.
2000-05-16 08:11:14 +00:00
anthonyd@netscape.com
71ccee07a0 r:mjudge
fix for bug# 29785, keyboard navigation of tables in editor
not completely fixed, tables with row|column span do not navigate correctly
2000-05-11 01:04:39 +00:00
buster@netscape.com
a88207dcc0 bug 29595 (and others)
fixes layout of pages where a single line is impacted by 2 or more floaters
r=troy
2000-03-22 23:19:10 +00:00
troy@netscape.com
3932716d1d Now line boxes are allocated out of the pres shell arena. This reduces the
overhead of memory allocation, and it gets us recycling which speeds up
resize reflows
2000-03-12 03:00:51 +00:00
buster@netscape.com
6e7a7bd162 added an assertion that will catch regressions associated with bug 25510
r=troy
a=jar
2000-02-22 22:05:04 +00:00
pp@ludusdesign.com
baf799923b Converting ::GetIID() into NS_GET_IID(). Bug #20232. r=scc, r=mozbot 2000-02-02 22:24:56 +00:00
troy@netscape.com
15f1e711fc b=22692 Changed RemoveFloater() to return PR_FALSE if the floater is
associated with that line
2000-01-29 00:17:04 +00:00
troy@netscape.com
42284c6625 More work on getting block frames to incrementally update their
maximum width
2000-01-08 03:58:27 +00:00
troy@netscape.com
f0465b161b Work-in-progress for having maximum width (needed by tables) be updated
incrementally
1999-12-30 04:15:45 +00:00
tbogard@aol.net
617bb737a6 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
796280940b updated license boilerplate to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:40:37 +00:00
kipp@netscape.com
4b6dc3b71b r=troy; Shrink block frames by 4 bytes per instance by making the overflow-lines instance variable a frame property 1999-11-02 23:42:52 +00:00
troy@netscape.com
bf2283fba6 Moved a bunch of stuff out to a nsIFrameDebug interface 1999-11-01 22:12:45 +00:00
kipp@netscape.com
35f2227e1c r=troy; api changes for 12958, 12760 and preperations for 17377 1999-10-29 14:35:36 +00:00
troy@netscape.com
b8ef6465be Changed SetView/GetView to take an additional argument which is the
pres context
1999-10-26 04:44:41 +00:00
kipp@netscape.com
fdb00751c1 Fixed O(N^2) debug logic bug; speed up paint loop by avoiding painting too much now that we have combined-area (bug 7455, 12297) 1999-10-19 23:04:19 +00:00
kipp@netscape.com
ad62fe2e34 r=troy; Reworked nsLineBox api to allow for reduced storage overhead; fixed bug 16252 while keeping bug 12709 fixed 1999-10-14 23:10:03 +00:00
kipp@netscape.com
1a9b3fe785 r=troy; Cleaned up line-box API (prep work for bug #12297; more coming); Support new line iterator API change (#16176) 1999-10-12 23:24:22 +00:00
kipp@netscape.com
ea36a75c90 Cleanup moz-decl-counter usage and fix NS_LOG_ADDREF usage 1999-10-08 20:41:19 +00:00
troy@netscape.com
355fa397e5 Added SizeOf() handler for floater information maintained by the
line box
1999-10-02 02:51:03 +00:00
kipp@netscape.com
280cd4f5d6 Tweaked list logic 1999-09-21 00:12:27 +00:00
kipp@netscape.com
f65ea2499e Fixed various incremental reflow bugs (1764,12890,1910,2222) and list bullet painting bug (10675,13599) 1999-09-15 00:28:10 +00:00
kipp@netscape.com
3dbd670c62 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
5bb666240c Changed block frame code to cache the max element width. This enables
us to ask for the maxElementSize when doing an incremental reflow
1999-08-28 00:39:55 +00:00
troy@netscape.com
d6f5216441 Renamed DeleteFrame() to Destroy() 1999-07-22 02:24:52 +00:00
kipp@netscape.com
1c26b2ab95 Fixed typo 1999-05-13 01:52:52 +00:00
kipp@netscape.com
2190d4b00a Updated line iterator impl to match API in nsILineIterator 1999-05-13 00:54:28 +00:00
kipp@netscape.com
2e41840893 Beginnings of a line iterator 1999-05-10 22:28:49 +00:00
troy@netscape.com
d1f82ae146 Added GetFrameType() and renamed GetAnchoredItem() to GetOutOfFrameFlow() 1999-04-23 14:34:48 +00:00
kipp@netscape.com
390aafb954 Tweaked FindLineContaining to return the index in the line where the frame is found 1999-04-20 21:52:22 +00:00
kipp@netscape.com
a6d69335f1 Removed some debris 1999-04-03 18:57:51 +00:00
kipp@netscape.com
8191f0a6d6 Removed carried-out-top-margin 1999-03-27 01:24:24 +00:00
kipp@netscape.com
76a50ef817 Spanked to collapse inline-reflow with line-layout into line-layout; fixed bugs #1278, #1990, #3527, #1670, etc. 1999-03-18 21:03:25 +00:00
kipp@netscape.com
0c04184d3e Output rects in twips 1999-03-05 04:26:40 +00:00