Commit Graph

459 Commits

Author SHA1 Message Date
Benjamin Stover
a371dc7830 Bug 524925 - Recompute overflow without reflowing for transforms. part=1/6 r=dbaron
Add an extra change hint, UpdateOverflow, that can be used to specify that
a frame's overflow areas may have changed and that they need to be recalculated.
When a transform on a frame changes, instead of marking it for reflow, set this
hint instead.

There is an added virtual function on nsIFrame, UpdateOverflow, which is called
recursively on a frame when the corresponding hint is set, to allow it to
update its overflow areas.
2011-06-15 14:03:49 -07:00
Mats Palmgren
3c3f2843b5 Bug 716408 - Fix nsTableFrame::DidSetStyleContext indentation. r=bernd 2012-01-17 00:38:10 +01:00
Mats Palmgren
1a6de35f09 Bug 716408 - Assert that a prev-in-flow is null or of the same frame type. No need to null out mCellMap, the ctor does that and re-Init of frames isn't allowed. r=bernd 2012-01-17 00:38:10 +01:00
Mats Palmgren
cd9f477bed Bug 716408 - No need to null-check for delete, no need to null out members in dtor. r=bernd 2012-01-17 00:38:10 +01:00
Mats Palmgren
f68098c935 Bug 716408 - Initialize all bits of mBits to zero. r=bernd 2012-01-17 00:38:10 +01:00
Mats Palmgren
658d5cb257 Bug 716408 - Make nsTableFrame::GetTableFrame abort if the given frame isn't a table frame descendant, thus guaranteeing a non-null result. r=bernd 2012-01-17 00:38:10 +01:00
Mats Palmgren
aa17b16c52 Bug 716408 - Remove unnecessary nsTableFrame::GetFirstInFlow() calls to get IsBorderCollapse() bit. r=bernd 2012-01-17 00:38:10 +01:00
Mats Palmgren
3cbc28c117 Bug 716408 - Remove null-checks of GetFirstInFlow() result. r=bernd 2012-01-17 00:38:10 +01:00
Bernd
8d8c460f96 bug 711864 - dEndY is already in the rowgroup r=mats 2012-01-09 07:37:16 +01:00
Bernd
b7a2ce08a3 bug 710098 - use effective rowspan r=mats 2011-12-29 09:17:55 +01:00
Mats Palmgren
ecaac9ba30 Bug 515530 - Remove nsHTMLContainerFrame. r=roc 2011-12-27 21:18:48 +01:00
Andrew Quartey
072440fd1c Bug 507419-Consistent ordering of AppendFrames and InsertFrames 2011-12-27 09:31:22 +01:00
Bernd
7d67be01a3 bug 531200 - always set the desiredHeight, also if SplitSpanningCells does not split any cell r=dholbert 2011-12-27 09:31:10 +01:00
Bernd
87f1efe456 bug 711359 - mark all subsequent rows as damaged r=mats 2011-12-27 09:31:09 +01:00
Nicholas Nethercote
33730101c6 Bug 711908 - Fix a bunch of GCC warnings in layout. r=dbaron. 2011-12-19 19:46:39 -08:00
Mats Palmgren
77f0b019cd Bug 619273 - Move the selection state bit from frames to content nodes. r=smaug 2011-12-20 10:15:41 +01:00
Bernd
e0590cd029 bug 707622 - rows without originating cells are suppressed at the table bottom r=mats 2011-12-07 20:38:25 +01:00
Bernd
f5016d85fe followup on bug 460637 2011-12-04 07:20:09 +01:00
Bernd
16a8e4e619 bug 705996 - the damageArea should only be set once the columns are in shape r=mats 2011-12-03 07:21:16 +01:00
Bernd
61a1137bc6 bug 451355 - testcase is now wfm 2011-12-03 07:21:16 +01:00
Bernd
52f13e5a15 bug 467444 - firstTruncatedRow can not be the last row on page if it should be pushed r=dholbert 2011-12-01 07:34:30 +01:00
Bernd
2d30f6dd30 bug 460637 - the group cellmaps need to set the damageArea relative to the entire table, patch by Mats Palmgren, Randell Jesup and Bernd, r=mats, bernd 2011-10-27 09:58:44 -04:00
L. David Baron
95d3162b21 Don't construct cell reflow states with a row group reflow state as their parent; instead, always link in a table row reflow state as appropriate. (Bug 627842, patch 3.875) r=roc
Fixes assertion on layout/reftests/bugs/409084-1a.html once the rest
of the inflation patches land.
2011-11-23 18:48:23 -08:00
Ed Morley
7bc582f20f Backout 4997c6f8b24d (bug 616542) for causing locally run mochitest-browser-chrome test runs to fail 2011-11-05 18:35:59 +00:00
Rail Aliiev
8a56fd9db2 Bug 616542 - Shorten file path length of mochitest; r=ted 2011-11-04 21:13:42 +00:00
Jonathan Watt
71a67640b1 Bug 695303 - Add a mozilla::clamped function to replace NS_CLAMP (so side affects of args are evaluated no more than once) and NS_MIN(max, NS_MAX(val, min)) (to make code clearer). r=bsmedberg. 2011-10-28 19:33:28 +01:00
Bernd
d056f0a6fd bug 695430 - stop trying to insert previously emptied framelists r=bzbarsky 2011-10-24 21:22:33 +02: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
Matt Woodrow
3da7419584 Bug 692968 - Make nsDisplayTableItem::GetBounds return the untransformed overflow area. r=tn 2011-10-13 14:01:27 +13:00
Ehsan Akhgari
0d262e6465 Bug 691824 - Return the principal child list for outer table frames only once; r=roc 2011-10-06 18:03:45 -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
Ehsan Akhgari
c15d8c0733 Bug 10209 - Part 6: Implement the CSS "containing block" concept correctly as a binary relation, as opposed to a unary relation; r=bzbarsky 2011-05-12 00:04:30 -04:00
Ehsan Akhgari
ef73506d4d Bug 10209 - Part 5: Allow table elements to act as absolute positioning containers; r=roc 2011-05-09 20:36:10 -04:00
Ehsan Akhgari
b273fc68d8 Bug 10209 - Part 2: Implement the absolute positioning support for all frames; r=roc 2011-04-29 19:02:33 -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
Boris Zbarsky
342f965d4f Bug 688405. Allow rowspans up to 65534, up from our current 8190. r=bernd 2011-09-26 00:52:33 -04:00
Mats Palmgren
913f71131c Bug 685901 - Remove the nsTableOuterFrame::mInnerTableFrame and mCaptionFrame members in favor of accessing the child frame lists directly. r=roc 2011-09-12 09:08:07 -07:00
Mats Palmgren
ba8355dd94 Bug 685154 - Cleanup nsIFrame::GetParentStyleContextFrame and related code. r=roc
Make nsCSSFrameConstructor::ConstructTable return a null frame if
creating the inner table frame fails.  Simplify some code since we can
now depend on the invariant that a properly created outer table frame
always has a non-null inner table frame.
2011-09-12 09:08:07 -07:00
Mats Palmgren
4a82c200c1 Bug 685154 - Cleanup nsIFrame::GetParentStyleContextFrame and related code. r=roc
Make nsIFrame::GetParentStyleContextFrame return the frame directly
instead of indirectly through an out parameter.  Remove the unused
nsPresContext parameter.
2011-09-12 09:08:07 -07:00
Masayuki Nakano
d9869bfccf Bug 669028 part.13 layout should use mozilla::LookAndFeel rather than nsILookAndFeel r=roc 2011-09-09 11:27:13 +09:00
Felix Fung
9bb0edf799 Bug 577266 - Correct misspellings in source code 2011-09-06 17:20:35 -07:00
Boris Zbarsky
f4f8fa2085 Bug 683952. Speed up iterating over the continuations of the frame when scrolling to it. r=roc 2011-09-06 22:57:46 -04:00
Phil Ringnalda
74787fa14f Back out fc945dec50bb and de06684dabc4 (bug 642551), 64c328251a24 (bug 683952) and 9d0d13998ebb (bug 684544) for orange on a CLOSED TREE 2011-09-06 21:42:54 -07:00
Boris Zbarsky
5ee508215f Bug 683952. Speed up iterating over the continuations of the frame when scrolling to it. r=roc 2011-09-06 22:57:46 -04:00
Ms2ger
0038e2e573 Bug 684807 - Annotate crashtest assertions on Android; r=philor 2011-09-06 18:35:43 +02:00
Michael Wu
990540dee3 Bug 676188 - Misc misuses of PRBool caught by the compiler, r=jimm,jst,bz,dougt,roc,mak 2011-08-30 11:55:14 -07:00
Mats Palmgren
6894179e71 Bug 653649 - New way of getting child lists from frames. (part 4/5) r=roc
Remove the nsIAtom* child list names and use child list ID enum instead.
2011-08-24 22:54:30 +02:00
Mats Palmgren
f06792a6ef Bug 653649 - New way of getting child lists from frames. (part 3/5) r=roc
Update GetAdditionalChildListName consumers to use the new
child list iterator instead.
2011-08-24 22:54:29 +02:00
Mats Palmgren
90d0315f85 Bug 653649 - New way of getting child lists from frames. (part 2/5) r=roc sr=dbaron
Implement GetChildList(ChildListID) and GetChildLists(nsTArray<ChildList>*)
for various frame classes.  Remove GetAdditionalChildListName(PRInt32)
methods and associated macros and list index constants.
2011-08-24 22:54:29 +02:00
Bernd
d39ebba03b bug 675490 - push nonplaced tfoots and mark them as nonrepeating r=bz 2011-08-13 18:37:43 +02:00