Commit graph

343 commits

Author SHA1 Message Date
dbaron@dbaron.org
764fb20bfe Fix handling of 'right'-derived static positions (mostly for RTL) when containing block has asymmetric border. b=419072 r+sr=roc a=damons 2008-02-25 13:16:21 -08:00
dbaron@dbaron.org
23d90b0567 Fix regression handling auto margins on absolutely positioned elements. b=419060 r+sr=roc a=blocking1.9+ 2008-02-24 10:28:57 -08:00
uriber@gmail.com
569b5e7d24 When all three of 'left', 'width', and 'right' of an absolutely-positioned elemnt are 'auto', use the direction of the static-position containing block (rather than the actual containing block) to decide whether to set 'left' or 'right' to the static position. bug=403328 r+sr=dbaron b1.9=mtschrep 2008-02-22 05:44:07 -08:00
dholbert@cs.stanford.edu
55fc6902ca Bug 402629: Fix percent-height updates in nested tables by checking if containing block depends on an ancestor cell's height, rather than just checking if it's a cell. r+sr=dbaron, a=blocking1.9+ 2008-02-21 13:02:07 -08:00
mozilla@weilbacher.org
4c60ecfb31 Bug 415686: remove FONT_LEADING_APIS_V2 ifdefs which are no longer useful for cairo builds. Also remove related functions and tests. r/sr=dbaron, r=pavlov, a=beltzner 2008-02-19 11:41:56 -08:00
bzbarsky@mit.edu
594852f718 Make sure to not set a negative computed width. Bug 403576, r+sr=dbaron, a=beltzner 2008-02-14 20:14:53 -08:00
dbaron@dbaron.org
96e4c0fb5d Remove unused nsHTMLReflowState::mRightEdge. b=407086 r+sr=roc a=dsicore 2007-12-12 13:50:27 -08:00
roc+@cs.cmu.edu
3f17341b3d Bug 375304. Make nsHTMLScrollFrame handle situations where the child content height depends on our height. patch by Eli Friedman, r+sr=roc,dbaron 2007-12-04 19:05:57 -08:00
roc+@cs.cmu.edu
8e798bb181 Backing out bug 375304 to fix reftest failures. 2007-12-01 03:49:13 -08:00
roc+@cs.cmu.edu
3dbbc3f864 Bug 375304. Fix absolute positioning where the abs-pos container is scrollable and has a height constrained by min-height etc. Patch by Eli Friedman, r+sr=roc 2007-12-01 02:38:09 -08:00
jwatt@jwatt.org
d308285bb4 Fixing bug 294086. <svg> should be a replaced element. r+sr=dbaron@mozilla.com blocking1.9=tor@acm.org 2007-11-18 04:09:03 -08:00
roc+@cs.cmu.edu
75849e68ff Backing out bug 375304 because of reftest failure 2007-11-11 19:40:27 -08:00
roc+@cs.cmu.edu
f0e32202af Bug 375304. Fix absolute positioning for scrolled abs-pos containers with weird height constraints. patch by Eli Friedman, r+sr=roc 2007-11-11 18:19:35 -08:00
fantasai.cvs@inkedblade.net
404e205908 paginate absolutely-positioned elements, b=154892 r+sr=roc a=roc 2007-10-01 22:57:45 -07:00
bzbarsky@mit.edu
0aa9489e17 Make line-height specified in ch units work. Bug 391909, r+sr+a+dbaron 2007-08-24 15:20:24 -07:00
sharparrow1@yahoo.com
ded759b0cc Bug 383883: {inc} issues with block moving through non-moving float. r+sr+a=dbaron 2007-08-20 13:07:50 -07:00
sharparrow1@yahoo.com
ddf20f3ad6 Bug 390740: Pass lang-group into GetMetricsFor more consistently (general patch). r+sr=roc, a=dbaron 2007-08-07 12:07:43 -07:00
bzbarsky@mit.edu
9c59e9e4cc Introduce a setter for nsHTMLReflowState::mComputedHeight so that we're sure to
update the resize flags properly.  Bug 388084, r+sr+a=dbaron
2007-08-02 11:08:05 -07:00
jwalden@mit.edu
6d7584839a Bug 348748 - Replace all instances of NS_STATIC_CAST and friends with C++ casts (and simultaneously bitrot nearly every patch in existence). r=bsmedberg on the script that did this. Tune in next time for Macro Wars: Episode II: Attack on the LL_* Macros. 2007-07-08 00:08:04 -07:00
dbaron@dbaron.org
7299d6225d Handle the vertical resizing in the first pass reflow correctly when we've previously done a special height reflow. b=381507 r=dholbert sr=roc 2007-06-18 16:19:39 -07:00
dbaron@dbaron.org
3cfbaf7cc5 Don't propagate line layout in reflow state when we're not in the line. b=320502 r+sr=roc 2007-05-17 23:04:04 -07:00
dbaron@dbaron.org
2539866c49 Fix vertical resizing for quirks mode percentage heights. b=380004 Patch by Daniel Holbert <dholbert@mozilla.com>. r+sr=dbaron 2007-05-15 14:52:44 -07:00
dbaron@dbaron.org
f4e95ca927 Add eStyleUnit_None so we don't have to use eStyleUnit_Null as a real value for max-width and max-height. b=379741 r+sr=bzbarsky 2007-05-10 23:01:31 -07:00
bzbarsky@mit.edu
1b5f6b30b6 Change the FrameNeedsReflow API to pass the dirty flags to be added directly tothe method, instead of setting them before calling the method. That way we canavoid reflowing the ancestor of a reflow root which is not itself dirty but hasdirty children. This also makes it harder to set dirty bits inconsistentlywith the FrameNeedsReflow call. Bug 378784, r+sr=dbaron, pending rbs' reviewon the mathml parts. 2007-05-06 12:16:51 -07:00
bzbarsky@mit.edu
0c312f39a8 Simplify code. Bug 367442 followup, jag's idea, r+sr=dbaron 2007-05-04 23:13:48 -07:00
bzbarsky@mit.edu
9cd2a580d0 Make computed style handle "normal" for line-height by computing an actualnumeric height. Bug 371041, r+sr=dbaron 2007-05-04 22:30:10 -07:00
dbaron@dbaron.org
ace3611ec9 Add support for -moz-intrinsic, -moz-min-intrinsic, -moz-shrink-wrap, and -moz-fill for width, min-width, and max-width. b=311415 r+sr=bzbarsky 2007-05-03 16:11:00 -07:00
bzbarsky@mit.edu
eeaa1a101b Rename nsIFrame::GetPresContext to nsIFrame::PresContext. Bug 376042, patch byTaras Glek <tglek@mozilla.com>, rs=roc. 2007-03-30 14:11:41 -07:00
roc+%cs.cmu.edu
8b52a3f2c1 Bug 372237. Never set TRUNCATED reflow status if the available height is unconstrained, even if the height happens to exceed the constant we use to indicate unconstrained height. r+sr=dbaron 2007-03-11 20:34:15 +00:00
bzbarsky%mit.edu
7bfe821507 Don't do arithmetic on NS_UNCONSTRAINEDSIZE. But 371348, r+sr=dbaron 2007-02-25 21:29:17 +00:00
bzbarsky%mit.edu
023de09ffa Set the used padding on the scrolled frame, since we're munging its padding.
Bug 370794, r+sr=dbaron
2007-02-20 18:54:16 +00:00
smontagu%smontagu.org
b21d2d6a35 Bug 369236: Move IsBidiFormControl from nsHTMLReflowState to nsBlockFrame. r+sr=roc 2007-02-11 07:19:09 +00:00
sharparrow1%yahoo.com
76a64e5c22 Bug 177805: Fix the use of units in Gecko. r+sr=roc 2007-02-07 07:46:44 +00:00
cvshook%sicking.cc
a39ff30284 Kill remainders of ns(XBL|HTML|XUL|Layout)Atoms. r/sr=jst b=368128 2007-01-30 00:06:41 +00:00
dbaron%dbaron.org
0e9e52586a Combine the code that tests inlines for dependence on the containing block width in order to disable resize reflow optimizations, and add to that code things that shrink wrap (inline-block, inline-table, buttons, fieldsets). Also move the percentage-height tests out, and into InitResizeFlags. b=163504 r+sr=bzbarsky 2007-01-27 18:40:26 +00:00
dbaron%dbaron.org
5cb78b8e99 Implement CSS display types inline-block and inline-table. b=9458, 18217 r+sr=bzbarsky 2007-01-27 18:36:57 +00:00
bzbarsky%mit.edu
6c8e16048d Remove assert that happens to not be assertable. Bug 368259, r+sr=dbaron 2007-01-26 05:02:31 +00:00
bzbarsky%mit.edu
baec9bd166 Make mComputedWidth private, with a getter/setter, and make the setter update
the resize flags.  Bug 367442, r+sr=dbaron
2007-01-26 00:05:12 +00:00
bmlk%gmx.de
97b5794242 Stronger band-aid to prevent table splitting inside columns bug 362275 r/sr=roc 2007-01-21 17:51:33 +00:00
dbaron%dbaron.org
73570b69c5 Make non-box frames use nsITheme methods concerning size, border, and padding, so that non-boxes with appearance set will obey the platform-specific theme. b=366722 r+sr=roc 2007-01-17 22:31:07 +00:00
roc+%cs.cmu.edu
c4ce9ebf36 Relanding changes to replace local helpers with new nsLayoutUtils versions. r+sr=dbaron 2007-01-17 08:11:32 +00:00
roc+%cs.cmu.edu
49502dd9e1 Backout of nsLineLayout changes; trying to fix luna orange 2007-01-17 06:27:01 +00:00
dbaron%dbaron.org
8ffa9cc3c9 Handle padding and border correctly for reflow states constructed without a parent (reflow roots, things inside nsIBoxes). b=366952 r+sr=roc, r=bzbarsky 2007-01-17 05:19:35 +00:00
roc+%cs.cmu.edu
e8d2197c1a Bug 333659. Relanding new nsLineLayout API to make in-first-line-frame and current-nsLineBox available; should not affect anything. r+sr=dbaron 2007-01-17 03:59:32 +00:00
roc+%cs.cmu.edu
7268a1957b Backing out text landing. 2007-01-16 22:25:20 +00:00
roc+%cs.cmu.edu
e6bad38abe Bug 333659. Landing new text interfaces, new gfxPangoTextRun (enabled), new textframe code (disabled). r+sr=dbaron for the part-of-the-build layout parts,r=stuart for the part-of-the-build gfx parts 2007-01-16 20:51:52 +00:00
mats.palmgren%bredband.net
4bd09f70d5 [border-collapse] Table content unnecessarily wrapped. b=363072 r+sr=dbaron 2007-01-05 15:38:03 +00:00
timeless%mozdev.org
4e651390ef Bug 355300 There should be only one nsGkAtoms creature
r=dbaron
2006-12-26 17:47:52 +00:00
mats.palmgren%bredband.net
3dedd0465d Rename ComputeHorizontalValue to ComputeWidthDependentValue (ditto for height) and some minor cleanup. b=364131 r+sr=dbaron 2006-12-18 13:20:18 +00:00
bzbarsky%mit.edu
f50ba6a651 Fix bug 364192 -- assert was backwards. 2006-12-18 05:08:01 +00:00
bzbarsky%mit.edu
f61607c926 Fix computation of a hypothetical box for abs pos frames which are descendants
of a rel-pos block.  Bug 363637, r+sr=dbaron
2006-12-18 03:00:23 +00:00
uriber%gmail.com
e42b5574fb Fix calculation of margin forced to "auto" when both margins and width are specified but together smaller than available width. bug=364079 r+sr=dbaron 2006-12-17 17:02:22 +00:00
dbaron%dbaron.org
d5af630c22 Better API for used padding/border/margin: remove deprecated Calc*For on nsStyleStructs and add GetUsed* to nsIFrame. b=332922 r+sr=roc 2006-12-13 23:04:57 +00:00
uriber%gmail.com
3faa594f22 Use the containing block's direction (LTR/RTL) instead of this frame's direction when deciding on default alignment of the frame. bug=328181 r+sr=dbaron 2006-12-13 16:16:25 +00:00
bzbarsky%mit.edu
76c2764d17 Fix percentage padding on nodes with overflow other than visible. Bug 332557,
r+sr=dbaron.
2006-12-12 15:18:40 +00:00
dbaron%dbaron.org
31f1898810 Bug 300030: Move intrinsic width computation out of nsIFrame::Reflow and into its own methods on nsIFrame. Replace reflow reasons, types, and commands with dirty bits/notifications. Thanks to bzbarsky for almost all of the HTML form controls (mozilla/layout/forms) changes, and many others for help testing and patching. For detailed commit logs, see REFLOW_YYYYMMDD_BRANCH, where YYYYMMDD is one of 20061031, 20060830, 20060603, 20060302, 20060119, 20051011, 20050804, 20050429, 20050315, 20050111, and 20041213. 2006-12-08 05:38:33 +00:00
roc+%cs.cmu.edu
deaf468704 Bug 342093. Use GetPositionIgnoringScrolling where we can, now that it exists. r+sr=bzbarsky 2006-06-20 21:13:05 +00:00
cvshook%sicking.cc
d3ec0aa5c5 Bug 335911: Change nsIContent::IsContentOfType to nsINode::IsNodeOfType. r/sr=bz 2006-05-05 06:52:21 +00:00
bzbarsky%mit.edu
8a650e0704 Make sure to not rely on how scrollframes handle frame offsets (esp. since it's
changed) when positioning fixed-pos frames.  Bug 331729, r+sr=roc
2006-04-04 22:36:01 +00:00
dbaron%dbaron.org
0e88f73bc6 Single line comments to describe files (helpful in LXR) 2006-03-29 18:29:03 +00:00
dbaron%dbaron.org
dcc10543a7 Remove unused mCompactMarginWidth member. b=328551 r+sr=roc 2006-02-26 10:35:44 +00:00
dbaron%dbaron.org
7c971fe2e1 Use IsContainingBlock rather than testing for block frame when looking for the placeholder's containing block for auto offsets; for non-blocks, just use the placeholder Y coordinate for auto-top. b=253479 r+sr=roc 2005-12-21 03:30:28 +00:00
timeless%mozdev.org
1c34e68034 Bug 106386 Correct misspellings in source code
patch by mats.palmgren@bredband.net r=dbaron sr=dbaron
2005-11-20 22:05:24 +00:00
roc+%cs.cmu.edu
49188025d3 Bug 307158. Half-heartedly account for vertical scrollbar presence when positioning absolute children relative to the right edge of a scrollable container. r+sr=dbaron with regrets. 2005-10-18 05:00:24 +00:00
dbaron%dbaron.org
65ae4fc59e Base factor line-height values on the same concept of font size as em-based line-height values. b=196270 r+sr=bzbarsky 2005-08-29 19:30:06 +00:00
dbaron%dbaron.org
8271626e99 Remove check for GECKO_USE_COMPUTED_HEIGHT environment variable. b=196270 r+sr=roc a=bsmedberg 2005-08-02 20:15:27 +00:00
bzbarsky%mit.edu
dbbb9a9b91 Make sure to not return a negative containing block height when computing a
quirks percentage height containing block.  Bug 303005, r+sr=dbaron,
a=bsmedberg
2005-08-02 20:09:49 +00:00
bzbarsky%mit.edu
98844fbef4 Use the padding-edge as the absolute containing block when the containing block
is established by a relatively positioned inline.  CSS2.1 is being changed
accordingly.  Bug 300816, r+sr=dbaron, a=asa
2005-07-25 20:15:31 +00:00
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