Commit Graph

727 Commits

Author SHA1 Message Date
bzbarsky@mit.edu
dd87fa05e7 Final fix for bug 263581 -- pre-dirty wrapped lines with dirty continuations,
if needed, before entering the loop over lines.  r+sr=roc
2004-11-29 22:02:11 +00:00
dbaron@dbaron.org
57c252e335 Comment why resize reflow optimization is broken. 2004-11-26 02:31:58 +00:00
roc+@cs.cmu.edu
71dfaca2db Bug 270804. Lines that we skipped reflowing during shrink-wrap-width block reflow may need to be reflowed if the shrink-wrap-width changes. r+sr=dbaron 2004-11-26 02:03:24 +00:00
roc+@cs.cmu.edu
b9ae93961a 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 2004-11-25 14:51:00 +00:00
bzbarsky@mit.edu
e4f0a4c291 First cut at not having a O(N^2) algorithm for WrappedLinesAreDirty(). Bug
263581, r+sr=dbaron
2004-11-25 02:54:58 +00:00
bzbarsky@mit.edu
b7d324424c Add a utility method for finding the containing block to nsHTMLReflowState, and
make use of it in fixing the text-decoration drawing on blocks to deal with
negative text-indent.  Bug 263374, r+sr=dbaron
2004-11-25 02:43:28 +00:00
roc+@cs.cmu.edu
445121a8e8 Bug 269905. Remember emptiness state on line boxes, but be selective about to to minimize the invalidation burden. r+sr=dbaron 2004-11-24 13:22:10 +00:00
roc+@cs.cmu.edu
6453157e4f Changing IsFrameEmpty to IsSelfEmpty as dbaron requested and I forgot to do before checking in. 2004-11-15 05:01:11 +00:00
roc+@cs.cmu.edu
8ae9836396 Bug 261064. Compute static absolute positions more accurately. Also, ensure that static absolutely positioned frames are moved when their placeholders move. Also, ensure that absolutely positioned frames positioned relative to the left or bottom edge of their container move when the container size changes. r+sr=dbaron (rubberstamp) 2004-11-14 20:22:58 +00:00
smontagu@smontagu.org
c3b2e10539 Make layout debugger show pseudo-styles. Bug 268235, r+sr=roc. 2004-11-11 17:48:09 +00:00
dbaron@dbaron.org
18d1c19d5d Don't push lines when height is unconstrained, even if current height is bigger than NS_UNCONSTRAINEDSIZE. b=265027 r+sr=roc a=mkaply 2004-10-22 17:32:54 +00:00
roc+@cs.cmu.edu
81f0ff5dd2 Bug 263586. Fix regression in incremental line reflow by being more conservative in detecting when a line has just been reflowed for the first time. r+sr=dbaron 2004-10-10 01:56:00 +00:00
roc+@cs.cmu.edu
3dd1cd4644 Bug 251162. Landing experimental implementation of CSS3 columns. r+sr=dbaron 2004-10-08 12:17:10 +00:00
roc+@cs.cmu.edu
5dd7ad27fe Bug 260896. When a floating first-letter frame reports FRAME_IS_NOT_COMPLETE after reflow, (then unlike blocks) that does NOT mean that it needs to continue on the next page! It just means it has an inline continuation. So correct its reflow status early in ReflowFloat so that we don't confuse the heck out of block reflow. r+sr=dbaron 2004-09-29 02:18:25 +00:00
bryner@brianryner.com
f447d12b9e Unify box and frame trees by moving nsIBox methods onto nsIFrame. XUL-box frames can call the superclass nsBox implementation, all other frames get the nsFrame implementation of the box methods, which acts like nsBoxToBlockAdaptor used to. Bug 258513, r+sr=roc. 2004-09-28 18:37:50 +00:00
roc+@cs.cmu.edu
debfd74e5d Bug 260515. Fix obviously broken code in CombineBreakType. r+sr=dbaron 2004-09-21 13:56:06 +00:00
roc+@cs.cmu.edu
bcd5829bb7 Bug 257612. Fix dynamic margin changes by 1) Propagate IsPreviousMarginDirty through empty lines 2) Reflow any line whose previous margin is dirty. 3) If a reflowed line could have been tested in a subsequent line's ShouldApplyTopMargin both before and after reflow, and might have been empty before or after reflow, then make the next line's previous margin dirty. 4) If reflowing a block changes its carried-out margin, then mark the next line's previous margin dirty. r+sr=dbaron 2004-09-18 14:39:07 +00:00
roc+@cs.cmu.edu
dd186b67c2 Bug 248825. Correctly push overflowing float placeholders to the start of the overflow lines in the case where the first overflow line is a block. r+sr=dbaron 2004-09-17 00:02:56 +00:00
roc+@cs.cmu.edu
f6d4272f10 Bug 259032. DeCOMtaminate nsIFrame::GetNext/PrevInFlow. r+sr=roc, patch by Will Levine 2004-09-14 02:28:03 +00:00
roc+@cs.cmu.edu
7c22672fe5 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 2004-09-13 13:35:46 +00:00
roc+@cs.cmu.edu
a4b6406697 Bug 258118. Ensure that float breaks are eventually honoured even if the line with the break is not reflowed and the following line is empty. r+sr=dbaron(rubber-stamp) 2004-09-13 02:21:35 +00:00
dbaron@dbaron.org
9921526bf4 Land bug 72747 in pieces: Implement overflow-x and overflow-y. b=72747 r+sr=roc 2004-09-05 00:04:04 +00:00
bryner@brianryner.com
ec6f36a174 Remove unneeded nsIFocusTracker interface, changing all users to nsIPresShell (bug 257596, r+sr=roc). 2004-09-01 05:16:00 +00:00
bryner@brianryner.com
5ad343526a More nsIPresShell deCOMtamination:
- Made Get/SetAuthorStyleDisabled and ReconstructStyleData non-virtual when called internally.
- Inlined GetFrameSelection and renamed it to FrameSelection.
- Removed non-inline version of GetViewManager.
- Removed unused EnablePrefStyleRules and ArePrefStyleRulesEnabled.

Bug 253889, r+sr=roc.
2004-08-29 03:08:44 +00:00
dbaron@dbaron.org
0ee0dd0b76 Backout the CSS parts of bug 72747 to see if that fixes the Tp regression. 2004-08-26 22:35:38 +00:00
dbaron@dbaron.org
f2ad5967af Implement 'overflow-x' and 'overflow-y' CSS properties, long implemented by IE for Windows and proposed for CSS3. Implement scrolling='yes' and equivalents on frame and iframe. Various pieces of related cleanup (see comment 22 in bug). b=72747 r+sr=roc 2004-08-26 17:11:20 +00:00
roc+@cs.cmu.edu
db320dda4d Relanding fix for bug 253977, now that state bits prevent GetOverflowLines from being expensive. Fix a few columns-hurting block bugs. 1) Always drain overflow lines on any kind of block reflow. 2) Set NS_FRAME_REFLOW_NEXTINFLOW in the reflow status whenever reflow of the block's next-in-flow is required. 3) Search overflow lines when we're looking for frame continuations to delete. 4) Show overflow area in nsContainerFrame frame dump. r+sr=dbaron 2004-08-26 12:38:50 +00:00
roc+@cs.cmu.edu
ed80878186 Bug 256937. Use state bits to avoid expensive property lookups in GetOverflowLines/OutOfFlows/Placeholders. r+sr=dbaron 2004-08-26 03:07:05 +00:00
roc+@cs.cmu.edu
e0b3b19e28 Bug 252920. Compute the block overflow area using nsRects instead of some hokey homegrown calculations. Don't advancy mY for empty lines. r+sr=dbaron 2004-08-25 13:10:06 +00:00
bryner@brianryner.com
0a85106bba Trying again to land support for content node properties (bug 253888). r=jst, sr=dbaron. 2004-08-24 18:50:29 +00:00
bryner@brianryner.com
8e70e22f41 Backing out 253888 again due to Tp regression plus another problem I noticed (frame properties not getting destroyed on frame destruction) 2004-08-22 07:10:50 +00:00
bryner@brianryner.com
e894651189 Second try at landing support for content node properties (bug 253888). r=jst, sr=dbaron. 2004-08-22 04:58:44 +00:00
roc+@cs.cmu.edu
55585b2d05 Bug 253977 backout because of possible Tp regression on btek. 2004-08-22 03:50:59 +00:00
roc+@cs.cmu.edu
6987ac1ab7 Bug 253977. Fix a few columns-hurting block bugs. 1) Always drain overflow lines on any kind of block reflow. 2) Set NS_FRAME_REFLOW_NEXTINFLOW in the reflow status whenever reflow of the block's next-in-flow is required. 3) Search overflow lines when we're looking for frame continuations to delete. 4) Show overflow area in nsContainerFrame frame dump. r+sr=dbaron 2004-08-22 03:00:46 +00:00
bryner@brianryner.com
07ff6116c8 Backing out bug 253888 until I can figure out how to fix the crash 2004-08-21 06:27:54 +00:00
bryner@brianryner.com
d485fa5edc Refactor the frame property code and use it for supporting properties on dom elements. Bug 253888, r=jst, sr=dbaron. 2004-08-21 05:09:50 +00:00
bzbarsky@mit.edu
0086a6b0d5 Addendum to bug 253572 patch per dbaron's comment in the bug. 2004-08-11 00:17:54 +00:00
bzbarsky@mit.edu
bc0bf6adce Make sure that GetFrameForPoint checks all layers of each float before moving
on to the next one.  Bug 253572, r+sr=roc
2004-08-10 22:24:00 +00:00
dbaron@dbaron.org
68dfa325da Fix names of constants to correspond to the new definitions of the values of the 'overflow' property. b=69355 r+sr=roc 2004-08-10 01:32:10 +00:00
bryner@brianryner.com
6cde4639f0 Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc 2004-07-31 23:15:21 +00:00
bryner@brianryner.com
15745b0b06 Consolidate PresContext classes into a single nsIPresContext implementation, and finish deCOMtaminating it. Bug 253470, r+sr=roc. 2004-07-29 19:41:39 +00:00
roc+@cs.cmu.edu
ae49448a02 Bug 253195. Fix a really nasty data corruption bug in nsBlockFrame::DoRemoveFrame, that only shows up when you need to delete inline continuations that are in a continuation of the current block --- probably doesn't happen today, but will happen with columns and page-layout editing. r+sr=dbaron 2004-07-27 18:22:14 +00:00
aaronleventhal@moonset.net
2664407e1c Bug 151375. Implement css2 outline (still called -moz-outline for now). Makes -moz-outline draw outside of the current frame. Improves appearance of focus outline. Lots of help from roc. r+sr=dbaron 2004-07-16 16:56:21 +00:00
aaronleventhal@moonset.net
4626431d47 Backing out bug 151375 for now, because of scrolling regressions in HTML and XUL listboxes and comboboxes 2004-07-15 18:57:47 +00:00
jim_nance@yahoo.com
34afa67d4a Fix But #250105 - Add Arena for nsLineLayout buffers. r+sr=roc 2004-07-15 17:50:34 +00:00
aaronleventhal@moonset.net
d511850eee Bug 151375. Implement css2 outline (still called -moz-outline for now). Makes -moz-outline draw outside of the current frame. Improves appearance of focus outline. Lots of help from roc. r+sr=dbaron 2004-07-14 21:58:34 +00:00
roc+@cs.cmu.edu
d62b4a1f34 Bug 244017. Hack invalidation of block children of blocks to avoid answering the question of whether we're supposed to invalidate the difference in frame bounds or the difference in overflow areas. r+sr=dbaron 2004-06-29 12:46:46 +00:00
roc+@cs.cmu.edu
2c598bdf2d Bug 185357. Collect out-of-flow frames for overflowing placeholders even if the placeholders are indirect (inline) children of the line. r+sr=dbaron 2004-06-27 02:01:06 +00:00
smontagu@smontagu.org
2420f668ee Bug 140611: When a block element is first in RTL <LI>, bullet moves left. patch by Lina Kemmel lkemmel@il.ibm.com, r=smontagu, sr=dbaron. 2004-06-20 09:51:10 +00:00
aaronleventhal@moonset.net
af13c1514f Fixing bustage 2004-06-04 21:08:05 +00:00