Jonathan Kew
b9938a1edc
bug 735577 - pt 3.2 - update the rest of layout code to use the new accessors on nsHTMLReflowState. r=smontagu
2013-12-27 17:59:21 +00:00
Ehsan Akhgari
80d135155d
Bug 907883 - Minimize #includes in layout/generic; r=roc
...
--HG--
extra : rebase_source : 5e87b764a12b05aff477c71547e2131be67ca93b
2013-08-22 14:32:52 -04:00
Scott Johnson
8e92c99740
Bug 743402, Part 1: Add a GetConsumedHeight() function to nsSplittableFrame in order to retrieve the portion of the computed height that was consumed by previous-in-flows. [r=roc]
2013-07-25 10:34:12 -05:00
Ryan VanderMeulen
6b307780d7
Backed out 6 changesets (bug 743402) for reftest failures on a CLOSED TREE.
...
Backed out changeset 19848fff857e (bug 743402)
Backed out changeset 049168537ae0 (bug 743402)
Backed out changeset 3098fea37f2d (bug 743402)
Backed out changeset ada93e976dca (bug 743402)
Backed out changeset c7907c54187f (bug 743402)
Backed out changeset 2edbbf6440c4 (bug 743402)
2013-07-24 15:14:04 -04:00
Scott Johnson
b6e4526ae0
Bug 743402, Part 1: Add a GetConsumedHeight() function to nsSplittableFrame in order to retrieve the portion of the computed height that was consumed by previous-in-flows. [r=roc]
2013-07-24 12:47:01 -05:00
Daniel Holbert
2a2cc2f06b
Bug 837000: Remove nsBlockReflowState.h's essentially-unnecessary #include of nsBlockFrame.h (and related cleanup). r=dbaron
2013-02-11 17:52:55 -08:00
Daniel Holbert
0ec55d7447
Bug 838462: Remove unused method nsBlockReflowState::Margin(). r=mats
2013-02-05 23:36:37 -08:00
Daniel Holbert
8f9051e747
Bug 836899: Remove nsBlockReflowState constructor unused parameter 'aMetrics'. r=dbaron
2013-01-31 14:40:05 -08:00
Chris Peterson
f913a80fc9
Bug 829344 - Part 4: Fix gcc -Wlogical-op warnings from PRBool/bool conversion. r=ehsan
2013-01-10 17:56:51 -08:00
Ehsan Akhgari
0fd9123eac
Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
...
This patch was generated by a script. Here's the source of the script for
future reference:
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "obj-ff-dbg*" \
! -name nsXPCOMCID.h \
! -name prtypes.h \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.c" \
-o -iname "*.cc" \
-o -iname "*.idl" \
-o -iname "*.ipdl" \
-o -iname "*.ipdlh" \
-o -iname "*.mm" \) | \
xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}
convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t
convert PRIntn int
convert PRUintn unsigned
convert PRSize size_t
convert PROffset32 int32_t
convert PROffset64 int64_t
convert PRPtrdiff ptrdiff_t
convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Aryeh Gregor
e806eeab4f
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
Gervase Markham
ca171eec44
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Mats Palmgren
86aed91a8e
Bug 730769 - Add NewLineBox/FreeLineBox methods to nsBlockFrame. part=1/2 r=bz
2012-03-11 03:32:27 +01:00
Ehsan Akhgari
2a602a5685
Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
...
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Ehsan Akhgari
bdc5c5427c
Bug 659828 - Part 1: Apply table margins to the outer table frame instead of the inner table frame (also fixes bug 87277); r=dbaron
...
Outer table frames act as CSS2.1 table wrapper boxes. We used to lay them out
without taking their margins into the account, which meant that their width was
always equal to the available width. This breaks horizontal positioning of
absolutely positioned kids of a table frame.
The main purpose of this patch is to apply the margins of tables to their outer
frame, instead of the inner frame. This means that the inner table frame will
always have a zero margin, which means that a lot of the stuff which used to
rely on the fact that table margins are applied to the inner frame need to
change.
In particular, in order to get the computed margins of a table, we used to query
the inner table frame, and this patch corrects that. Also, when shrink wrapping
tables, we used to not take the margins of the inner table frame into account,
which is fixed by this patch too. nsBlockReflowState::
ComputeReplacedBlockOffsetsForFloats also needed to be changed to read the
margin values from the outer frame too.
Also, as part of this patch, we start to respect the CSS2.1 margin model for
captions on all sides. This means that in particular, the top/bottom margins on
the top-outside and bottom-outside captions will not be collapsed with the
top/bottom margins of the table, and that the margins of the caption element
contribute to the width and height of the outer table frame. The
427129-table-caption reftest has been modified to match this new behavior.
Another side effect of this bug is fixing bug 87277, and the reftests for that
bug are marked as passing in this patch.
2011-05-31 19:02:56 -04:00
Michael Wu
d8e503c38b
Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
...
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
L. David Baron
b401e8f1d5
Convert nsBlockReflowState::mFloatCombinedArea and part of nsBlockFrame to split overflow areas. (Bug 542595, patch 9) r=roc a2.0=blocking2.0:beta8
2010-10-06 21:25:45 -07:00
fantasai
4b31319f01
Change coordinate system in the float manager from content box (most of the time, but sometimes border box) to always border box. (Bug 551425) r=dbaron a2.0=blocking+
2010-08-11 12:32:53 -07:00
L. David Baron
6d279b0435
Rename float continuations to pushed floats. (Bug 563584, patch 33) r=roc
...
This patch was generated with the following sed commands on layout/generic/*.{h,cpp}: 's/FLOAT_CONTINUATION/PUSHED_FLOAT/g;s/FloatContinuation/PushedFloat/g;s/float continuation/pushed float/g' plus whitespace fixup where the frame state bits are defined.
2010-08-05 21:59:20 -07:00
L. David Baron
5deb652621
Add bit to lines indicating that they may have a placeholder for a float that was pushed to the next line (and bump the child count up to 32 bits). (Bug 563584, patch 24) r=roc
2010-08-05 21:59:20 -07:00
L. David Baron
4a3f5d15df
Remove aReflowStatus parameters made unnecessary by previous patch. (Bug 563584, patch 20) r=roc
2010-08-05 21:59:20 -07:00
L. David Baron
5247c76404
Do the same for PlaceBelowCurrentLineFloats: don't propagate the truncation of a float into the line's reflow status. (Bug 563584, patch 18) r=roc
2010-08-05 21:59:20 -07:00
L. David Baron
867d31744c
Don't propagate the float's reflow status through places that expect an inline's reflow status, to avoid the assertion for which bug 563584 was filed. This separates pushing of floats from pushing of lines, and allows first-in-flow floats to be pushed to the next page without their associated line. (Bug 563584, patch 17) r=roc
2010-08-05 21:59:19 -07:00
L. David Baron
e714f071f9
Manage float continuations to-be-pulled by the next-in-flow better by keeping them in a separate frame list until they're actually pulled. (Bug 563584, patch 13) r=roc
2010-08-05 21:59:19 -07:00
L. David Baron
99f4849c65
Track which frames were float continuations that need to be pulled to the next block rather than figuring it out again when it's time to pull them. (This allows first-in-flows to be float continuations.) (Bug 563584, patch 12) r=roc
2010-08-05 21:59:19 -07:00
L. David Baron
4f730231c6
Don't try to clear pushed floats when computing the final size of blocks. Fixes scrollbar on layout/reftests/bugs/563584-6-columns.html . (Bug 563584, patch 11) r=roc
2010-08-05 21:59:19 -07:00
L. David Baron
353538a3ba
Most of CanPlaceFloat is unnecessary given the float placement rules (in particular, that the top of a float cannot be higher than the top of any prior left or right float) and the fact that we now split floats. (Bug 563584, patch 3) r=roc
2010-08-05 21:59:18 -07:00
L. David Baron
11f75cf522
Remove aForceFit/aRelaxHeightConstraint concept from float reflow, since we now split floats rather than push them to the next page (and correct propagation of nsHTMLReflowState::mFlags::mIsTopOfPage will force fitting when we need to). (Bug 563584, patch 2) r=roc
2010-08-05 21:59:18 -07:00
Daniel Holbert
16a6a6205f
Bug 503961: Initialize block-reflow-state's nsOverflowContinuationTracker a little later, so that it doesn't end up with stale overflow-list pointers. r=fantasai r=roc
2009-09-13 17:26:01 -07:00
fantasai
d5c48032c3
Bug 492627 - Remove Placeholder Continuations [Part V: Reimplement float splitting without placeholder continuations] r=roc
2009-08-31 11:25:36 -07:00
fantasai
973c4e83aa
Bug 492627 - Remove Placeholder Continuations [Part IV: Switch float layout APIs to pass float directly, without placeholder] r=roc
2009-08-31 11:25:35 -07:00
L. David Baron
7c71744210
Fix bug 25888 for inline frames other than bullets: redo line reflow when the line's height pushes it into the way of other floats. (Bug 25888) r+sr=roc
2009-05-20 07:21:34 -04:00
L. David Baron
78f084eb30
Merge InitFloat into AddFloat (on nsLineLayout and nsBlockReflowState). (Bug 25888) r+sr=roc
2009-05-20 07:21:34 -04:00
Arpad Borsos
70e2e8c94a
Bug 492937 - kill nsLineLayout::mPlacedFloats and related code; r+sr=roc
2009-05-14 11:31:35 +02:00
L. David Baron
e4a4e2453e
Use a struct containing a rectangle and a boolean for float available space rather than passing them around separately. (Bug 25888) r+sr=roc
2009-04-08 13:52:37 -07:00
L. David Baron
f63606188b
Complete switch away from nsBlockReflowState::mAvailSpaceRect by removing the old members. (Bug 25888) r+sr=roc
2009-04-08 13:52:37 -07:00
L. David Baron
b901f2cb67
Switch away from nsBlockReflowState::mAvailSpaceRect for reflow of child blocks. (Bug 25888) r+sr=roc
2009-04-08 13:52:37 -07:00
L. David Baron
9bba032aed
Switch away from nsBlockReflowState::mAvailSpaceRect for reflow of child floats. (Bug 25888) r+sr=roc
2009-04-08 13:52:36 -07:00
L. David Baron
5e6c45ce6a
Switch away from nsBlockReflowState::mAvailSpaceRect in bullet reflow, and simultaneously refix bug 427370 in a way that also fixes bug 428810. (Bug 25888) r+sr=roc
2009-04-08 13:52:36 -07:00
L. David Baron
84174c3b60
Begin removing mAvailSpaceRect and mBandHasFloats from nsBlockReflowState by converting the current state-mutation GetAvailableSpace to a getter GetFloatAvailableSpace to replace it, and reimplementing the state mutation in terms of the getter. (Bug 25888) r+sr=roc
2009-04-08 13:52:36 -07:00
L. David Baron
eee42cfdd7
Replace space manager with a more limited float manager. (Bug 191448) r+sr=roc
...
--HG--
rename : layout/generic/nsSpaceManager.cpp => layout/generic/nsFloatManager.cpp
rename : layout/generic/nsSpaceManager.h => layout/generic/nsFloatManager.h
2009-01-04 19:39:54 -05:00
L. David Baron
57a8e776d8
Rename flags and methods from space manager to float manager. (Bug 191448) r+sr=roc
2009-01-04 19:39:54 -05:00
Robert O'Callahan
8ff4467f78
Bug 457398. Don't treat empty lines as the first line for text-indent or first-letter/first-line purposes. r+sr=dbaron
2008-11-27 10:44:47 -08:00
Robert O'Callahan
446ada92bc
Allow floats to be placed on the current line even after nonzero-width inline content has been placed. Fixes an Acid3 layout bug. r+sr=dbaron
2008-06-11 11:53:22 +12:00
dbaron@dbaron.org
31fad3f842
Compute widths for replaced block clearing past floats once we're at the correct vertical position. b=430813 r+sr=roc a=schrep
2008-05-03 16:33:36 -07:00
dbaron@dbaron.org
0cc180b641
Fix bug 427129 / 377664: When displacing blocks that don't interact with floats around floats, displace the border box rather than the margin box. Fix bug 427782: Simultaneously, only displace when the width actually won't go down to an amount that fits (i.e., if it will go to an amount smaller than the intrinsic minimum width, let it). b=427129 r+sr=roc a=schrep
2008-04-14 18:05:17 -07:00
mats.palmgren@bredband.net
5a624fe0b5
The position of an outside bullet should not be affected by floats inside the principal block (this fixes most cases). b=427370 r+sr=dbaron a1.9=beltzner
2008-04-13 10:43:12 -07:00
dbaron@dbaron.org
8967a5c8bd
Stop using -moz-float-edge for list items, but offset the bullet position in the presence of floats. b=413840 (and numerous others) r+sr=roc a=blocking1.9+
2008-02-10 13:49:24 -08:00
dbaron@dbaron.org
b6cd4ed827
Push scrollframes, tables, and other blocks that don't participate in float formatting down when they don't fit next to floats. b=134706,349255 r+sr=roc a=blocking1.9+
2008-01-28 23:40:05 -08:00
tglek@mozilla.com
fdf793303e
Clean up prbool misuse in layout. bug 398312, r+sr+a=dbaron
2007-10-09 17:00:05 -07:00