Ehsan Akhgari
def7bdd96e
Bug 938849 - Build layout/generic in unified mode; r=roc
2013-11-15 08:19:02 -05:00
Ehsan Akhgari
27c999b3b4
Bug 921753 - Part 1: Avoid #including nsStyleStructInlines.h in nsIFrame.h; r=roc
...
This patch reduces the number of files that transitively #include
gfx/2d.h from 1782 to 1582.
2013-10-01 17:00:38 -04:00
Mats Palmgren
0ac2c33a9f
Bug 919318 - A few cosmetic changes after dropping the Get prefix on some methods. r=dholbert
2013-09-25 11:42:35 +00:00
Mats Palmgren
ae50ca5ce4
Bug 919318 - Drop the Get prefix on the frame methods GetFirstContinuation, GetLastContinuation, GetFirstInFlow, GetLastInFlow and also on nsLayoutUtils::GetLastContinuationWithChild, because they never return null. r=dholbert
2013-09-25 11:42:34 +00:00
Daniel Holbert
e999460fd0
Bug 919871: Make .cpp files in layout/generic #include their corresponding .h file first. r=mats
2013-09-24 18:43:43 -07:00
Corey Ford
17fd17cb8b
Bug 911786 - Part 2: Reapply relative positioning when moving frames without reflowing them. r=dholbert
2013-09-11 11:51:42 -07:00
Daniel Holbert
a4ed8c910a
Bug 883514: During block reflow, check floats after reflowing bullet frames, instead of before. r=dbaron
2013-09-05 11:59:09 -07:00
Ehsan Akhgari
f56168072d
Bug 907883 - Minimize #includes in layout/generic; r=roc
...
--HG--
extra : rebase_source : 5e87b764a12b05aff477c71547e2131be67ca93b
2013-08-22 14:32:52 -04:00
Jonathan Kew
65526d27a3
bug 904555 - clean up use of nsRect APIs in layout. r=roc
2013-08-14 13:27:20 +01:00
Corey Ford
c1f2a8126d
Bug 898794 - Store normal frame position before applying relative positioning. r=dbaron
2013-08-08 17:20:17 -07:00
Corey Ford
c0b1bad70a
Bug 898797 - Use nsHTMLReflowState::ApplyRelativePositioning when placing floats. r=dbaron
2013-07-29 21:53:13 -07:00
Scott Johnson
a5680b3063
Bug 743402, Part 4: Refactor ApplySkipSides() and GetSkipSides() to return the correct value during reflow by adding an optional nsHTMLReflowState parameter. [r=roc]
2013-07-25 10:34:27 -05:00
Scott Johnson
c9182b38da
Bug 743402, Part 3: Refactor nsBlockFrame to utilize new calculations for paginated content. [r=roc]
2013-07-25 10:34:22 -05:00
Scott Johnson
5a676adbce
Bug 743402, Part 2: Pull GetEffectiveComputedHeight() into nsSplittableFrame and refactor it to utilize consumed height for paginated content. [r=roc]
2013-07-25 10:34:16 -05:00
Ryan VanderMeulen
a692880c23
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
6003af5e8d
Bug 743402, Part 4: Refactor ApplySkipSides() and GetSkipSides() to return the correct value during reflow by adding an optional nsHTMLReflowState parameter. [r=roc]
2013-07-24 12:47:17 -05:00
Scott Johnson
9a8d912f0d
Bug 743402, Part 3: Refactor nsBlockFrame to utilize new calculations for paginated content. [r=roc]
2013-07-24 12:47:12 -05:00
Scott Johnson
a652917e76
Bug 743402, Part 2: Pull GetEffectiveComputedHeight() into nsSplittableFrame and refactor it to utilize consumed height for paginated content. [r=roc]
2013-07-24 12:47:06 -05:00
Mats Palmgren
9ff1b84050
Bug 883676 - Implement 'page-break-inside:avoid' also for the case where the block reflow is COMPLETE but does not fit in the available height. r=roc
2013-07-13 13:18:17 +00:00
Simon Montagu
f52ec81b93
Use GetFrameBaseLevel to drill down to the first leaf frame instead of just looking at the first child when getting the line direction. Bug 889742, r=roc
2013-07-04 10:13:52 +03:00
Daniel Holbert
3f6239a071
Bug 886313: Make DisplayLine generate display items in a temporary collection, so we can apply text-overflow clipping without affecting earlier lines. r=roc
2013-06-28 00:22:57 -07:00
Daniel Holbert
802a0acff1
Bug 884564 followup: fix end-of-line whitespace in nsBlockFrame::CreateContinuationFor. (whitespace-only, DONTBUILD)
2013-06-18 23:23:45 -07:00
Daniel Holbert
8c8ad220f1
Bug 884576: Make some nsBlockFrame helper-methods (ReflowPushedFloats, PrepareResizeReflow, & SplitLine) infallible. r=bz
2013-06-18 23:09:22 -07:00
Daniel Holbert
35f013099f
Bug 884564: Make CreateContinuationFor() infallible and directly return its outparam. r=bz
2013-06-18 23:09:20 -07:00
Mats Palmgren
30feba8b8d
Bug 863935. r=roc
2013-06-10 18:31:59 +00:00
Robert O'Callahan
a551f00d51
Bug 872254. Clear line/row cursors when overflow areas of lines or table rows change. r=bz
...
--HG--
extra : rebase_source : 81c1c4269e22ffad98433669ef152002b9d63533
2013-05-30 16:44:37 +12:00
L. David Baron
8eed96b5d6
Bug 871338: Handle NS_BLOCK_LOOK_FOR_DIRTY_FRAMES lazy marking in GetMinWidth and GetPrefWidth in addition to Reflow. r=bzbarsky
2013-05-13 15:37:00 -07:00
L. David Baron
1a4df21deb
Fix warnings-as-errors bustage from changeset 09552b219c3a (Bug 828312 patch 3).
2013-05-10 18:04:55 -07:00
L. David Baron
e1c209333c
Bug 828312 patch 3: Wait to mark lines dirty until we're in reflow, to avoid O(N^2) behavior as a result of looking for lines. r=bzbarsky
...
The assertion count reduction from 12 to 8 in
layout/generic/crashtests/798020-1.html is the removal of the 4
###!!! ASSERTION: math on NS_UNCONSTRAINEDSIZE: 'NS_UNCONSTRAINEDSIZE != aState.mReflowState.mComputedBorderPadding.left && NS_UNCONSTRAINEDSIZE != aState.mReflowState.ComputedWidth()'
in nsBlockFrame::PrepareResizeReflow by avoiding calling
nsBlockFrame::PrepareResizeReflow.
2013-05-10 17:35:08 -07:00
L. David Baron
b55a1a7ac7
Bug 828312 patch 2: Make list renumbering code set NS_FRAME_HAS_DIRTY_CHILDREN correctly on intermediate blocks and inlines, and NS_FRAME_IS_DIRTY correctly on the bullets. r=bzbarsky
...
The change to mark NS_FRAME_IS_DIRTY on the bullets fixes a failure in
layout/reftests/bugs/418574-1.html exposed by patch 3.
2013-05-10 17:35:08 -07:00
Daniel Holbert
60c2c28212
Bug 870555 part 1: Add curly braces around early-return in nsBlockFrame::GetSkipSides, for clarity. r=mats
2013-05-09 20:10:47 -07:00
Daniel Holbert
cdf2e95325
Bug 855841: Remove unused constants NS_STYLE_CLEAR_BLOCK, NS_STYLE_CLEAR_COLUMN, NS_STYLE_CLEAR_PAGE. r=mats r=fantasai
2013-05-02 16:01:11 -07:00
Mats Palmgren
cd2a9144a4
Bug 866785 - Move repeated nsIFrame::List implementations code to a new method, ListGeneric, for re-use. Cleanup and improve the code a bit. r=roc
...
Specifically:
* move all the frame dump methods to nsIFrame. Especially nsFrame::ListTag
was annoying, often requiring a cast to nsFrame*.
* print common values in the same order for all types of frames
* print fluid continuations as "next-in-flow=%p" and non-fluid as
"next-continuation=%p" (as before)
* print the style-context more compactly, e.g.
"[sc=0x7faa6b60e0a0] pst=:first-line" becomes
"[sc=0x7faa6b60e0a0:first-line]"
* suppress printing visual/scroll-overflow rects when they are identical
to mRect and do the same for nsLineBox::List where it was especially
hard to see which lines actually had real overflow
* fix a bug that printed the child list name at the far right when the
principal list was empty (making it hard to see)
* print the address of child lists (other than the principal list) to
help debug frame list property bugs
* s/NS_IMETHODIMP/void/
2013-04-30 20:38:52 +02:00
Daniel Holbert
d3e0a23853
Bug 865477: Use Maybe<> instead of nsAutoPtr<> for lazily-constructed nsHTMLReflowState in nsBlockFrame::Reflow(). r=bz
2013-04-25 09:03:28 -07:00
Chris Lord
54272cbda0
Bug 856932 - Fix fixed margins on position:fixed hierarchies. r=roc
...
Make sure that fixed margins aren't applied to auto-positioned frames, unless
their containing block is the primary frame of the body element.
2013-04-15 09:31:45 +01:00
Scott Johnson
b303b4dcb2
Bug 600100, Part 2: Force a vertical resize even if our available height hasn't changed in anonymous blocks of a column set so we don't crash. [r=mats]
2013-04-08 13:38:33 -05:00
Robert O'Callahan
29cfc08a5b
Bug 841192. Part 13: Rename nsFrame::ApplyOverflowClipping to ShouldApplyOverflowClipping. r=mattwoodrow
...
We rename nsFrame::ApplyOverflowClipping to nsFrame::ShouldApplyOverflowClipping
to reflect the fact that it doesn't cause any clipping.
--HG--
extra : rebase_source : d3bd1ef902276526b37b27c510a8d3a9db6416dc
2013-03-07 00:08:16 +13:00
Mats Palmgren
7fa166a5f5
Bug 729519 - Allocate heap nsFrameLists from the shell arena. r=bzbarsky
...
"new nsFrameList()" becomes "new (shell) nsFrameList()".
"delete list" becomes "if (list) list->Delete(shell)" - note also that
an additional assertion was added that list is empty when deleted.
"nsAutoPtr<nsFrameList> list(StealSomeFrames())" becomes
"AutoFrameListPtr list(aPresContext, StealSomeFrames())"
2013-04-01 17:26:02 +02:00
Mats Palmgren
46cbb9a249
Bug 729519 - Make frames destroy all child frames and remove their nsFrameList properties when destroyed. r=bzbarsky
...
Specifically, this wasn't done for the OutsideBullet list which was
destroyed by the property destructor, potentially after the entire
frame tree was gone. Now we'll assert that the property destructor
isn't called.
Use SafelyDestroyFrameListProp when destroying PushedFloat and
OverflowOutOfFlows frame lists since it's more robust.
Destroy [Excess]OverflowContainers frame lists if they exist, regardless
of the IsFrameOfType(nsIFrame::eCanContainOverflowContainers) bit
(since the oveflow continuation tracker doesn't check that before
creating these lists -- this was the source of crash bugs before
that bit was added to ColumnSetFrame).
Assert in SetPropTableFrames that the property doesn't exist, because
if it does the property destructor will run, which isn't supported.
2013-04-01 17:26:02 +02:00
Mats Palmgren
37e145bc26
Bug 851847 - Optimize nsBlockFrame::StealFrame when removing a normal flow child. r=bzbarsky
2013-03-23 21:49:45 +01:00
Mats Palmgren
3db9895bc1
Backout rev 85397e0a6dba - wrong patch. r=me
2013-03-23 21:45:53 +01:00
Mats Palmgren
1f8322a617
Bug 851847 - Optimize nsBlockFrame::StealFrame when removing a normal flow child. r=bzbarsky
2013-03-23 21:10:34 +01:00
Mats Palmgren
929c14eb76
Bug 851849 - Make nsBlockFrame::AddFrames() return void since it can't fail, and non-virtual since it's not meant to be overridden. Add a post-condition that the given
...
aFrameList is empty. r=bzbarsky
2013-03-23 21:10:34 +01:00
Mats Palmgren
ff67e7f83e
Bug 851848 - Remove the OOM check for allocating the BulletFrame now that PresArena allocations are infallible. r=bzbarsky
2013-03-23 21:10:34 +01:00
Mats Palmgren
e45878cd69
Bug 851848 - Remove OOM checks for the result of NewLineBox now that PresArena allocations are infallible. r=bzbarsky
2013-03-23 21:10:33 +01:00
Boris Zbarsky
f75d10efbe
Bug 852501 part 4. Make CreateContinuingFrame infallible. r=dholbert
2013-03-19 21:47:49 -04:00
Boris Zbarsky
462f47d89e
Bug 852428 part 2. Make nsIFrame::Init infallible. r=dholbert
2013-03-19 21:47:48 -04:00
Scott Johnson
ff3ba1992e
Bug 600100, Part 1: Return a status of NS_FRAME_NOT_COMPLETE during reflow of nsBlockFrame if we have a next continuation with pushed floats to prevent crashing in columns. [r=dbaron]
2013-03-19 09:05:05 -05:00
Scott Johnson
a6c26d7c4b
Backed out changeset 3b18c328b316 (bug 600100) to fix commit message DONTBUILD.
2013-03-19 09:43:27 -05:00
Scott Johnson
7cb809091c
Bug 600100, Part 1: Return a status of NS_FRAME_NOT_COMPLETE during reflow of nsBlockFrame if we have a next continuation with pushed floats to prevent crashing in columns.
2013-03-19 09:05:05 -05:00