bzbarsky%mit.edu
5791846622
Keep a "last band we touched" cursor so we can avoid seeking through the whole
...
linked list for multiple appends to the end. Bug 270392, r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@218816 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-23 21:42:41 +00:00
bzbarsky%mit.edu
9bfaa5ca42
Speed up ClearFloats for cases when we have lots of floats. Bug 349113, r+sr=roc
...
git-svn-id: svn://10.0.0.236/trunk@208758 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-29 21:56:51 +00:00
roc+%cs.cmu.edu
b1ae3cf7e7
relanding fix for bug 317278 :-(
...
git-svn-id: svn://10.0.0.236/trunk@201179 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-29 01:19:48 +00:00
roc+%cs.cmu.edu
bd9175c940
Bug 237085. Move string subdivision code to gfx so we can efficiently make it metrics-dependent. r=smontagu,sr=rbs
...
git-svn-id: svn://10.0.0.236/trunk@200963 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-26 22:18:23 +00:00
roc+%cs.cmu.edu
d643001e93
Bug 317278. Reland patch that reflows lines again if we detect some already-placed floats need to move to the next line. This time, with changes to nsSpaceManager's PushState/PopState infrastructure so that dynamic allocations are never required; the saved state is always stack-allocated by callers. r+sr=dbaron
...
git-svn-id: svn://10.0.0.236/trunk@200367 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-19 23:06:59 +00:00
dbaron%dbaron.org
b258ce85ca
Single line comments to describe files (helpful in LXR)
...
git-svn-id: svn://10.0.0.236/trunk@193203 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-29 18:29:03 +00:00
roc+%cs.cmu.edu
69dc3ea41b
Bug 299742. Blocks that contain lines with clearance need not reflow those lines if there are no floats in the space manager yet and no lines need to be reflowed otherwise.
...
git-svn-id: svn://10.0.0.236/trunk@176640 18797224-902f-48f8-a5cc-f745e15eee43
2005-07-26 21:35:59 +00:00
roc+%cs.cmu.edu
d4a6c32e7b
Bug 209694. Major rework of margin-collapsing and clearance to match CSS 2.1 rules. Also includes major incremental reflow fixes for those situations. See the bug for details. rubber-stamp r+sr=dbaron
...
git-svn-id: svn://10.0.0.236/trunk@165781 18797224-902f-48f8-a5cc-f745e15eee43
2004-11-25 14:51:00 +00:00
roc+%cs.cmu.edu
26dae9e55b
Bug 257216. Fix sundry block issues for columns. In particular, remove overflowing floats from the space manager before we compute the space manager's XMost and YMost to include in the block size. r+sr=dbaron
...
git-svn-id: svn://10.0.0.236/trunk@162210 18797224-902f-48f8-a5cc-f745e15eee43
2004-09-13 13:35:46 +00:00
bryner%brianryner.com
865734bf2f
Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc
...
git-svn-id: svn://10.0.0.236/trunk@160184 18797224-902f-48f8-a5cc-f745e15eee43
2004-07-31 23:15:21 +00:00
dbaron%dbaron.org
2c97c45164
Move clearing from nsBlockBandData to nsSpaceManager so that 'clear' works even when the floats to be cleared don't overlap the block's border-box. b=148994 Patch by Blake Kaplan <mrbkap@rice.edu>. r+sr=dbaron
...
git-svn-id: svn://10.0.0.236/trunk@157603 18797224-902f-48f8-a5cc-f745e15eee43
2004-06-08 19:18:30 +00:00
jim_nance%yahoo.com
3f4820cc7f
Fix bug #242044 - Reduce number of allocations by nsSpaceManager::PushState
...
git-svn-id: svn://10.0.0.236/trunk@157468 18797224-902f-48f8-a5cc-f745e15eee43
2004-06-06 18:45:02 +00:00
gerv%gerv.net
2ac510b678
Bug 236613: change to MPL/LGPL/GPL tri-license.
...
git-svn-id: svn://10.0.0.236/trunk@155068 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 14:30:37 +00:00
jkeiser%netscape.com
d214c656a8
Fix crash printing fixed-position float elements (bug 200347), r=kin@netscape.com, sr=dbaron@dbaron.org, a=asa
...
git-svn-id: svn://10.0.0.236/trunk@142762 18797224-902f-48f8-a5cc-f745e15eee43
2003-05-22 20:56:35 +00:00
dbaron%dbaron.org
28c762385d
Remember the lowest floater top for CSS2 9.5.1 rule 5 (a float cannot be higher than earlier floats) on the space manager rather than the block reflow state so that it works across blocks sharing the same space manager. Save and restore it in the space manager's PushState and PopState to fix incremental reflow bug (177331). b=196919 r+sr=roc+moz Change PRIntn to PRInt32. b=115153 r+sr=bzbarsky
...
git-svn-id: svn://10.0.0.236/trunk@139299 18797224-902f-48f8-a5cc-f745e15eee43
2003-03-11 23:56:49 +00:00
dbaron%dbaron.org
e6a2b29ebf
Remove nsISizeOfHandler and associated SizeOf methods. b=106792 r=bzbarsky sr=jst
...
git-svn-id: svn://10.0.0.236/trunk@138193 18797224-902f-48f8-a5cc-f745e15eee43
2003-02-22 15:34:38 +00:00
dbaron%fas.harvard.edu
a7efa8275b
Replace NS_BLOCK_WRAP_SIZE with making unconstrained-width reflow of frames with NS_BLOCK_SPACE_MGR consider the floats. This means we no longer use the overflow area for layout (other than the overflow property). Handle right floaters in unconstrained width reflow by just treating them as left floaters. b=172896 r+sr=roc
...
git-svn-id: svn://10.0.0.236/trunk@135476 18797224-902f-48f8-a5cc-f745e15eee43
2002-12-19 00:12:08 +00:00
karnaze%netscape.com
b70e7f9f22
bug 169620 - don't pass in negative avail widths, don't add/subtract from NS_UNCONSTRAINEDSIZE, make HR's desired width at least as big as its me width. sr=kin, r=dbaron
...
git-svn-id: svn://10.0.0.236/trunk@130371 18797224-902f-48f8-a5cc-f745e15eee43
2002-09-24 21:02:20 +00:00
kin%netscape.com
a850d5d255
Fix for bug #96736 : [FLOATER]The "Top 1000 Reviewer" is overwritten by text
...
mozilla/layout/base/src/nsSpaceManager.cpp
mozilla/layout/base/src/nsSpaceManager.h
- Implemented nsSpaceManager methods PushState()
and PopState().
mozilla/layout/html/base/src/nsBlockReflowContext.cpp
- Modified nsBlockReflowContext::DoReflowBlock() to
call PushState() and PopState() to remove any
floaters that may have been added to the SpaceManager
during the intermediate "unconstrained" Reflow()
call, used to calculate the max block width. This
allows the Reflow() call that immediately follows
it to properly place the floaters.
r=waterson@netscape.com sr=dbaron@fas.harvard.edu
git-svn-id: svn://10.0.0.236/trunk@127595 18797224-902f-48f8-a5cc-f745e15eee43
2002-08-19 04:41:57 +00:00
seawood%netscape.com
08f53dff2a
The c++ standard requires that the throw list be used when declaring functions as well as defining them.
...
commercial compiler fixes for bug #149032
git-svn-id: svn://10.0.0.236/trunk@124604 18797224-902f-48f8-a5cc-f745e15eee43
2002-07-03 17:14:41 +00:00
dbaron%fas.harvard.edu
7ddeb79974
Remove unnecessary XPCOM interface around nsSpaceManager. b=102453 r=jag sr=waterson
...
git-svn-id: svn://10.0.0.236/trunk@106331 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-26 05:06:07 +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
jst%netscape.com
2ec1ee65c2
Fixing bug 98828. Cache a few nsSpaceManager objects to avoid spending 43%cvs ci -m ! of the time spent in PresShell::ProcessReflowCommand() in new and delete. r=dbaron@fas.harvard.edu, sr=waterson@netscape.com
...
git-svn-id: svn://10.0.0.236/trunk@102715 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-11 00:55:05 +00:00
dbaron%fas.harvard.edu
0e283e8c8c
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
...
git-svn-id: svn://10.0.0.236/trunk@83772 18797224-902f-48f8-a5cc-f745e15eee43
2000-12-16 18:56:06 +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
kipp%netscape.com
e18af2d0ee
Cleanup moz-decl-counter usage and fix NS_LOG_ADDREF usage
...
git-svn-id: svn://10.0.0.236/trunk@50239 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-08 20:41:19 +00:00
troy%netscape.com
148aeb9479
Space issue. r=kipp@netscape.com
...
Replaced hash table which used lots of memory with simple linked list of
FrameInfo* structs
git-svn-id: svn://10.0.0.236/trunk@49949 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-06 04:22:51 +00:00
troy%netscape.com
67890faf02
Added SizeOf() handler for space manager
...
git-svn-id: svn://10.0.0.236/trunk@49632 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-02 00:52:01 +00:00
kipp%netscape.com
56b503d3a9
Implement List method
...
git-svn-id: svn://10.0.0.236/trunk@47471 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-15 00:24:54 +00:00
troy%netscape.com
35f020525f
Added 'm' prefix to struct data members
...
git-svn-id: svn://10.0.0.236/trunk@38183 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-02 23:31:01 +00:00
troy%netscape.com
71ac661243
Fix for bug #7397 . Changed space manager to allows negative values
...
for rect regions
git-svn-id: svn://10.0.0.236/trunk@36663 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-24 02:04:50 +00:00
alecf%netscape.com
fef17484d9
BandRect needs to be public to be visible outside the class definition (HPUX bustage)
...
git-svn-id: svn://10.0.0.236/trunk@22152 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-26 17:36:00 +00:00
kipp%netscape.com
35bd6ce005
Make dtor virtual to quite down compilers
...
git-svn-id: svn://10.0.0.236/trunk@19694 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-04 16:26:42 +00:00
brade%netscape.com
1e8cf12dc5
reduce Macintosh compiler warnings by adding prototype
...
git-svn-id: svn://10.0.0.236/trunk@17246 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-06 18:53:59 +00:00
troy%netscape.com
4d65b22403
Changed nsISpaceManager interface to conform to XP-COM conventions on
...
return values
git-svn-id: svn://10.0.0.236/trunk@17085 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-04 04:54:33 +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
e456af6993
Changes for removing regions
...
git-svn-id: svn://10.0.0.236/trunk@1983 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 22:55:40 +00:00
troy
e7e5cf121d
Work in progress on removing a region
...
git-svn-id: svn://10.0.0.236/trunk@1945 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 15:30:10 +00:00
troy
ed866399b2
Revamped space manager internals
...
git-svn-id: svn://10.0.0.236/trunk@1892 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 03:00:56 +00:00
troy
7e662b38e2
Changes to space manager implementation.
...
git-svn-id: svn://10.0.0.236/trunk@1514 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-13 16:22:44 +00:00
troy
5d0ec492ca
Added new member functions
...
git-svn-id: svn://10.0.0.236/trunk@1478 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 23:02:02 +00:00
troy
a10eab0307
Changed space manager to return a list of available and unavailable trapezoids
...
git-svn-id: svn://10.0.0.236/trunk@821 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:58:16 +00:00
troy
8fa41c7a75
Changed space manager to pass in the frame that's associated with a block
...
of unavailable space
git-svn-id: svn://10.0.0.236/trunk@479 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 23:06:41 +00:00
kipp
fb1503758e
moved to pub
...
git-svn-id: svn://10.0.0.236/trunk@165 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 20:24:54 +00:00