Commit Graph

275 Commits

Author SHA1 Message Date
roc+%cs.cmu.edu
40eecde5e2 Bug 293504. Make MEW/max-width calculations in scrollframes consistent with regular reflow about how we handle the scrollbar width. r+sr=dbaron,a=chofmann 2005-06-29 04:17:21 +00:00
dbaron%dbaron.org
f00b4902e7 Implement the same block-alignment behavior for align=left (which matters only for RTL) that we do for center and right. b=64510 r+sr=roc a=asa 2005-06-15 23:45:06 +00:00
roc+%cs.cmu.edu
7243f7850e Bug 292370. Adjust instrinsic widths in nsHTMLScrollFrame to account for 'width','min-width' and 'max-width' style settings. r+sr=dbaron,a=mkaply 2005-05-03 21:15:55 +00:00
roc+%cs.cmu.edu
995017676b Forgot to check in these other files too 2005-05-02 23:01:41 +00:00
roc+%cs.cmu.edu
9441821383 Checked in wrong patch. Backing out. 2005-05-02 04:48:59 +00:00
roc+%cs.cmu.edu
4a070ac8cf Bug 47710. Fix padding inside scrollframes. r+sr=dbaron,a=chofmann 2005-05-02 04:26:38 +00:00
bzbarsky%mit.edu
e61e1e1935 Fix border width inheritance by keeping track of both the border width we'd
have if our style were not none/hidden and the actual computed border width.
Bug 290377, r+sr=dbaron, a=asa
2005-04-29 15:44:38 +00:00
roc+%cs.cmu.edu
84b0577142 Bug 240276. Make nsHTMLScrollFrame be a regular HTML frame, not a box frame, so we don't have to go through box layout. It gets its own reflow implementation that handles min-max and lots of other good stuff. rs+sr=dbaron,a=asa 2005-04-28 21:57:22 +00:00
roc+%cs.cmu.edu
465537e4b9 Bug 277420. Use ConstructBlock when creating scrolled and absolutely positioned blocks. Removes copied code and makes columns work in such situations. r+sr=bzbarsky 2005-02-08 02:15:26 +00:00
bzbarsky%mit.edu
14d73e6a25 Fix percentage heights on auto-width floats. Bug 216303, r+sr=dbaron 2005-01-24 23:38:11 +00:00
mats.palmgren%bredband.net
9b52d61dc2 Consider min/max-width/height and box-sizing when calculating abs.pos. auto margins. b=182748 r+sr=dbaron 2005-01-24 23:24:05 +00:00
dbaron%dbaron.org
acdc28470a Add comment. 2005-01-18 23:32:48 +00:00
bzbarsky%mit.edu
7e84577a31 Restore placeholder-based positioning of fixed-pos frames to the way it used to
work.  Bug 268111, r+sr=dbaron
2005-01-15 19:29:14 +00:00
mats.palmgren%bredband.net
760b1b170b Implement CSS2.1 10.3.7, shrink-to-fit for abs.pos. elements. b=201897 r=bzbarsky sr=dbaron 2004-11-26 23:28:09 +00:00
roc+%cs.cmu.edu
13a6502805 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
1cb3693088 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
b7dfbedd1f 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
fbb67978a5 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
bzbarsky%mit.edu
7fd8feb31d Create an api for easily converting between the coordinate systems of two
frames or two views.  Use this to fix the auto-positioning of abs pos boxes to
work no matter how their containing block and the block their placeholder lives
in are related, and convert various other callers to the new API.  Bug 266968,
r+sr=roc
2004-11-03 16:16:57 +00:00
roc+%cs.cmu.edu
c237520c89 Bug 251162. Landing experimental implementation of CSS3 columns. r+sr=dbaron 2004-10-08 12:17:10 +00:00
roc+%cs.cmu.edu
44a2fd5b52 Bug 259032. DeCOMtaminate nsIFrame::GetNext/PrevInFlow. r+sr=roc, patch by Will Levine 2004-09-14 02:28:03 +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
bryner%brianryner.com
0fd21c3872 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
bzbarsky%mit.edu
0d96d79660 Use the direction of the abs pos box, not its containing block, when deciding
which offset to use the static position for.  Bug 247287, r+sr=dbaron
2004-07-15 06:10:53 +00:00
bryner%brianryner.com
97a65f9548 Get rid of nsILanguageAtom and deCOMtaminate nsILanguageAtomService (bug 230603). Also, fix a bunch of atom double-addref leaks in nsFontMetricsXlib. r+sr=dbaron. 2004-06-08 23:53:59 +00:00
jst%mozilla.jstenback.com
77c4322ab2 Fixing bug 240543. Hiding some nsIPref* API bloatyness in nsContentUtils. r=caillon@aillon.org, sr=peterv@propagandism.org 2004-04-29 23:34:19 +00:00
bzbarsky%mit.edu
d44c8e2932 Change mCBReflowState to mean the containing block of _this_ reflow state
instead of the containing block of kids.  Fix the containing block calculations
for various cases of absolutely positioned descendants of relatively positioned
inlines (eg make "right" and "bottom" work in those situations).  Bug 135082,
r+sr=dbaron
2004-04-24 17:56:23 +00:00
bzbarsky%mit.edu
241afa342c Don't allow negative line-heights to make it past the CSS parser. Bug 240900,
r+sr=dbaron
2004-04-18 20:10:09 +00:00
gerv%gerv.net
708b56cff4 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:30:37 +00:00
bryner%brianryner.com
0af1a79c51 More nsIPresContext deCOMtamination (bug 229371). r+sr=roc. 2004-04-13 00:28:44 +00:00
dbaron%dbaron.org
41c16857c2 DeCOMify nsIFrame::IsPercentageBase and rename to IsContainingBlock. b=237169 r+sr=bzbarsky a=brendan 2004-03-12 04:40:17 +00:00
bryner%brianryner.com
5f7a8b383e Inline boolean getters and setters on nsIPresContext, and change the storage to a bitfield. Bug 229371, r+sr=roc. 2004-02-20 17:49:01 +00:00
dbaron%dbaron.org
410855b9a6 Change the way we handle auto margins on blocks with outer width (excluding auto margins) wider than their containing block. Use rules equivalent to overconstraint handling (margins non-auto) so that we depend on 'direction' rather than on which margins are 'auto'. b=185411 r=roc sr=bzbarsky 2004-02-04 05:18:37 +00:00
bzbarsky%mit.edu
e792da8eeb Remove code that munges block widths inside table cells. Bug 232754,
r+sr=dbaron
2004-02-03 16:49:38 +00:00
dbaron%dbaron.org
249be1bc15 Remove unneeded casts and extra shadowing variable. 2004-01-18 07:13:40 +00:00
dbaron%dbaron.org
c5034ca1d8 Fix elements with max-width overlapping floats due to initial incorrect position by reflow state. b=52916 Patch by Chris Waterson. r=dbaron sr=bzbarsky 2004-01-18 06:06:13 +00:00
roc+%cs.cmu.edu
9348803726 Bug 225820. Fold nsFrameInnerFrame into nsFrameOuterFrame, rename to nsSubDocumentFrame, and generally clean up this mess. r+sr=dbaron 2004-01-10 05:36:32 +00:00
bzbarsky%mit.edu
bde7ac0a33 Make sure to not compute negative widths for blocks. Bug 230249, r+sr=dbaron 2004-01-08 03:38:25 +00:00
bzbarsky%mit.edu
bba32c2126 Make AdjustComputedWidth/Height take a boolean that tells it whether to account
for box-sizing; sometimes we don't want to.  Also fix parsing of
max-width/height and min-width/height to error on negative values (per spec).
Bug 227819, r+sr=dbaron
2004-01-05 23:59:25 +00:00
bzbarsky%mit.edu
bd6e613fb1 Calculate the relative offsets after we've done whatever corrections we need to
do to the CB height (eg in quirks mode).  Bug 226954, r+sr=dbaron
2004-01-05 23:48:57 +00:00
bryner%brianryner.com
d572bc76cf deCOMtaminate nsIPresContext::GetCompatibilityMode / SetCompatibilityMode (bug 229081). r+sr=bzbarsky. 2003-12-24 21:51:50 +00:00
bryner%brianryner.com
dfe3513814 Change all callers of nsIPresContext::GetShell() to use the non-refcounting versions. Most callers now use PresShell(), a few that were checking for null conditions are using GetPresShell() -- this will be remedied once we can ensure that a prescontext never has a null pres shell. Bug 227690, r+sr=bzbarsky. 2003-12-21 05:36:36 +00:00
dbaron%dbaron.org
a012b34247 Do inheritance without layout-dependent computations, per CSS2.1. Remove eStyleUnit_Inherit and nsStyleCoord::SetInheritValue. b=205790 r+sr=bzbarsky a=asa 2003-11-24 19:46:25 +00:00
jst%mozilla.jstenback.com
4183787fa9 Fixing bug 225837. DeCOMtaminating nsIContent more, making GetTag() return a weak raw pointer, and renaming GetTag() to Tag(), and making GetRangeList() return an const nsVoidArray*, and changing GetContentID() to return the id, and renaming it to ContentID(). r=jonas@sicking.cc, sr=bryner@brianryner.com. 2003-11-19 01:20:56 +00:00
dbaron%dbaron.org
e852c24b41 Turn DetermineFrameType into InitFrameType. b=225911 r+sr=bzbarsky 2003-11-17 00:35:17 +00:00
dbaron%dbaron.org
8856db0238 Clean up nsIFrame::IsEmpty signature and move towards making 'white-space' work on inlines. b=191699 r+sr=roc 2003-11-10 23:36:06 +00:00
uid502
d81619b4fa Bug 190735. DeCOMtaminate nsIFrame::GetFrameType. r+sr=bzbarsky 2003-10-31 20:19:18 +00:00
bzbarsky%mit.edu
99faa8a63a Fix regression bug 223394 -- percent-height replaced inlines that only have
auto-height ancestors should get intrinsic height instead of 0, even in quirks
mode.  r+sr=roc, a=asa
2003-10-24 07:31:50 +00:00
bzbarsky%mit.edu
b07d633d7d Fix crash bug 223064. Patch by mats.palmgren@bredband.net (Mats Palmgren), r+sr=bzbarsky 2003-10-22 07:01:35 +00:00
bzbarsky%mit.edu
af287cfe97 Remove limiting of the quirk containing block search to only one level. Bug
222730, also fixes bug 88035, r+sr=dbaron
2003-10-18 20:22:22 +00:00
bzbarsky%mit.edu
e62eff588a Line up the hypothetical box for positioned frames with the _top_ of the line
box if there is nothing in the line before the positioned frame's placeholder.
When that happens, it means that the positioned frame's content actually came
before whatever content lives in the line box and thus the frame should not be
lined up with the line box's bottom.  Bug 94468, r+sr=roc
2003-10-18 08:04:37 +00:00
bzbarsky%mit.edu
cf629db257 Undoing last change now that I have perf data. 2003-10-18 07:13:30 +00:00
bzbarsky%mit.edu
88517f3ebd Test performance impact of not limiting to the first level now that bug 222730
is fixed.  r=dbaron
2003-10-18 06:08:39 +00:00
bzbarsky%mit.edu
2cb729ce47 Only calc a quirk containing block if we have a percentage height. Bug 222730,
r+sr=dbaron
2003-10-18 05:09:42 +00:00
bzbarsky%mit.edu
c9d4d38519 Stop walking up the tree looking for something to size against if we hit a
positioned frame.  Bug 221784, r+sr=roc
2003-10-18 00:24:28 +00:00
uid502
d521946094 Bug 165149. More cleanup. Make nsStyleContext::GetPseudoType return a weak pointer. Also remove unnecessary arguments to nsHTMLContainerFrame::CreateViewForFrame. r+sr=bzbarsky 2003-10-17 02:38:37 +00:00
bzbarsky%mit.edu
3bfbfe8dce Relanding fix for bug Bug 219693, r+sr=dbaron 2003-10-06 13:13:37 +00:00
bzbarsky%mit.edu
556fd116db Backing out for now, till fallout from tree redness settles. 2003-10-06 04:23:56 +00:00
bzbarsky%mit.edu
666475ba65 Make quirks %-heights on kids of scrolling parents work the same way as for
non-scrolling parents.  Bug 219693, r+sr=dbaron
2003-10-06 02:58:19 +00:00
jst%mozilla.jstenback.com
5037b2a4a2 Fixing bug 215981. DeCOMtaminating nsIContent and nsIDocument some, and also some minor changes to other related interfaces. r=caillon@aillon.org, sr=peterv@propagandism.org. 2003-09-27 04:18:26 +00:00
timeless%mozdev.org
41c29367c7 Bug 219908 Remove some layout warnings
r=bz sr=dbaron
2003-09-22 21:40:12 +00:00
dbaron%dbaron.org
72f0fe7993 Let ComputeHorizontalValue handle unconstrained width, since unconstrained width only means the vertical margin is unknown in some cases. Patch by Mats Palmgren <mats.palmgren@bredband.net>. r+sr=dbaron a=asa b=209066 2003-09-06 04:01:33 +00:00
bzbarsky%mit.edu
e2e733b5de DeCOMify GetParent/GetBindingParent/GetDocument on nsIContent. Bug 213823,
r+sr=jst
2003-07-28 21:25:13 +00:00
roc+%cs.cmu.edu
91f9439805 Ongoing deCOMtamination. r+sr=dbaron 2003-06-29 03:43:05 +00:00
caillon%returnzero.com
2df173e9c8 Bug 209087
Content interface out-parameters should use ptr-to-ptrs instead of ref-to-ptrs and some small deCOMtamination.
r+sr=jst@netscape.com
2003-06-13 20:10:01 +00:00
dbaron%dbaron.org
75ff60c62f Clean up API (and its callers) for getting style data: remove unneeded null checks and switch to new inline member functions (one for each struct) that return values. b=197205 r+sr=roc a=brendan 2003-05-15 03:42:21 +00:00
seawood%netscape.com
80e1b303cc Purge XP_PC.
Bug #56767 r=mkaply sr=alecf
2003-04-02 22:45:08 +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
jst%netscape.com
401737583f Removing a redeclaration of a variable that sould've been removed with the last change to this file. Bug 181644, r=bzbarsky@mit.edu, sr=dbaron@dbaron.org, a=dbaron@dbaron.org 2003-02-06 23:10:20 +00:00
bzbarsky%mit.edu
17212a33a3 Fix abs pos positioning regression. Bug 181644 redux, patch by
Rick.Ju@sun.com, r=bzbarsky, sr=dbaron, a=asa
2003-01-29 11:35:10 +00:00
bernd.mielke%snafu.de
735f766b06 set the quirk height default to NS_AUTOHEIGHT if we are in a unconstrained container bug 189840 r/sr=roc+moz a=asa 2003-01-28 05:19:20 +00:00
karnaze%netscape.com
a4389a11ce bug 175455 - Added mTableDerivedComputedWidth to the reflow state to detect computed widths which exist only because of table cells. Limit percent width of descendants whose percentage base has such a computed width. sr=roc, r=bernd 2003-01-19 20:07:39 +00:00
jerry.tan%sun.com
0d2188fd0e bug 181644, patch by rick.ju@sun.com, r=bz, sr=roc+moz 2002-12-23 06:01:14 +00:00
caillon%returnzero.com
22b558c150 Backing out these changes since they appear to have caused a Txul regression on some tinderboxes (not all... weird...) 2002-12-11 05:11:02 +00:00
caillon%returnzero.com
71f8783cae Bug 181975 - Convert layout to use nsIPrefService, nsIPrefBranch, and friends.
r/sr=roc+moz
2002-12-10 23:41:12 +00:00
karnaze%netscape.com
182417eb0a 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 2002-09-24 21:02:20 +00:00
shanjian%netscape.com
444c5238f4 #130091 should we get rid of "NEW_FONT_HEIGHT_APIS"
r=Roland.Mainz@informatik.med.uni-giessen.de, sr=rbs
2002-09-18 19:37:31 +00:00
karnaze%netscape.com
132be7a8bd bug 137388 - Jery Tan's patch to restrict applying CalcQuirkContainingBlockHeight to a frame inside a table cell. sr=bzbarsky, r=karnaze. 2002-09-04 04:00:41 +00:00
timeless%mac.com
46be326ed0 Bug 161945 clean up simple mac build warnings
r=dbradley sr=bz
2002-09-02 21:26:11 +00:00
bzbarsky%mit.edu
355f48a3e9 Fix placement of positioned elements with auto "top". Bug 44508, patch
by Mats Palmgren (mats.palmgren@bredband.net), r=dbaron, sr=bzbarsky.
2002-08-15 23:00:23 +00:00
smontagu%netscape.com
d63551e2ff Fix regression with form controls on visual bidi pages. Bug 142233, r=jkeiser, sr=kin 2002-07-10 00:52:17 +00:00
jkeiser%netscape.com
3e2a1902ca Rest of patch (partial commit before). Remove nsFormFrame forever. bug 125578, r=alexsavulov@netscape.com, sr=jst@netscape.com 2002-06-04 02:00:34 +00:00
shanjian%netscape.com
7f5900aa67 #142562 problem with <td align=right or align=center
We are observing langGroup in some place while ignor it in others. This patch
make all font metrics call consistent. nsIRenderingContext API is change to
make things neat.
r=rbs, sr=waterson
2002-05-24 20:11:14 +00:00
waterson%netscape.com
f7bc6f0d27 Fix build bustage. 2002-05-15 22:21:15 +00:00
dbaron%fas.harvard.edu
b7e8be94dd Give nsHTMLReflowState an explicit copy-constructor and assignment operator to fix up mCBReflowState and fix regressions from previous patch. b=143706 r=bzbarsky sr=waterson 2002-05-15 19:58:20 +00:00
dbaron%fas.harvard.edu
0d941d730b Store containing block reflow state so we don't have to walk up the tree to find it every time. b=143706 r=attinasi sr=waterson 2002-05-14 12:59:55 +00:00
waterson%netscape.com
e3554c37cc Bug 129115. Change the reflow path from a list structure to a tree structure to amortize state recovery and damage propagation costs. Eliminate table timeout reflows. r=kin,karnaze,rods,rbs; sr=attinasi 2002-05-10 18:22:41 +00:00
tingley%sundell.net
f51fcb48dd Fix regression of bug 89065 to make text-decoration: blink work again.
r=dbaron, sr=attinasi
2002-05-07 23:26:02 +00:00
rbs%maths.uq.edu.au
ca47d8b903 Added yet another defense to make Mozilla really robust when font resources run out, the patch makes font metrics to be fail safe or at least very hard to break -- to the point that failure means that the system is barely working (testing showed that Mozilla stayed alive while other applications were dying). Per request of super-reviewer & driver, also removed wallpaper null-checks sprinkled in the past for the problem. b=136248, r=shanjian, sr=attinasi 2002-05-02 22:24:59 +00:00
waterson%netscape.com
d572531e5b Bug 138057. Eliminate nsBlockFrame::RememberFloaterDamage, instead recording the damage when we reflow the floater. This allows us to catch several cases that we weren't catching before, so we no longer need to dirty all the line boxes when an incremental reflow targeted at a float arrives. r=dbaron, sr=attinasi. 2002-04-26 19:19:39 +00:00
attinasi%netscape.com
2fe443e329 Check for null FontMetrics to prevent crash. r=shanjian sr=kin 2002-04-25 22:00:22 +00:00
shanjian%netscape.com
84eb514a5a #76097 Need to include external leading for CJK normal Line-height
Font metrics returns both internal and external leading to layout. Layout
now is responsible for calculating the normalLineHeight. It take consideration
of external leading, and compensate if it does not exist. All these are controled
by a preference switch.

r=rbs, sr=attinasi,
2002-04-11 00:00:40 +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
9acf51392f bug 131020 - process special height reflow when initiator is the containing table. a=roc+moz, sr=attinasi, r=bernd. 2002-04-01 06:46:17 +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
waterson%netscape.com
854831c91c Bug 115113. Eliminate nsIReflowCommand, and just use nsHTMLReflowCommand directly. r=karnaze, sr=attinasi. 2001-12-17 22:39:59 +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
dbaron%fas.harvard.edu
f7590852c8 Switch to using typesafe way of accessing style data. r=hyatt sr=waterson b=111883 2001-11-28 05:06:17 +00:00
karnaze%netscape.com
59485c067e bug 30692 - Have children of cell block use the computed width of the cell. sr=attinasi, r=alexsavulov 2001-11-06 22:57:17 +00:00
dbaron%fas.harvard.edu
01bf33644b Fix inheritance of percentage values for 'line-height' by removing hacks to base percentage values for 'line-height' on the actual value rather than the computed value of 'font-size'. Fix various |const|-ness issues in nsRuleNode. b=97726 r=pierre sr=hyatt 2001-11-06 07:48:02 +00:00