Граф коммитов

941 Коммитов

Автор SHA1 Сообщение Дата
Mats Palmgren c4f06b92d3 Bug 1008917 - part 9,10, make DidReflow() return type 'void'. r=roc 2014-05-12 17:40:29 +00:00
Mats Palmgren a722b491f1 Bug 1008917 - part 2,3,4, make Reflow() return type 'void', and make a few reflow related helper methods 'void' too. r=roc 2014-05-12 17:40:28 +00:00
Mats Palmgren 41d551c60b Bug 613659 - Make GetBorderRadii non-inline to make it compile on Windows. r=roc 2014-05-05 17:55:55 +00:00
Mats Palmgren a0092289f8 Bug 613659 - Add "skip sides" and border/frame size parameters to GetBorderRadii(). Add an inline convenience method for the old signature. r=cam 2014-05-05 17:55:54 +00:00
Mats Palmgren 6301b21c9f Back out bug 613659 (for regression bug 998792)
--HG--
rename : layout/reftests/backgrounds/background-size-slice.html => layout/reftests/backgrounds/background-size-continuous.html
rename : layout/reftests/backgrounds/background-size-cover-slice.html => layout/reftests/backgrounds/background-size-cover-continuous.html
rename : layout/reftests/backgrounds/background-size-cover-clone.html => layout/reftests/backgrounds/background-size-cover-each-box.html
rename : layout/reftests/backgrounds/background-size-clone.html => layout/reftests/backgrounds/background-size-each-box.html
2014-04-20 19:39:24 +00:00
Mats Palmgren 2cc113e58b Bug 613659 - Make GetBorderRadii non-inline to make it compile on Windows. r=dholbert 2014-04-18 23:01:24 +00:00
Mats Palmgren 28117bac1e Bug 613659 - Add "skip sides" and border/frame size parameters to GetBorderRadii(). Add an inline convenience method for the old signature. r=cam 2014-04-18 23:01:23 +00:00
Kearwood (Kip) Gilbert c0402875df Bug 984226 - Add parameter to OverflowChangedTracker::AddFrame to distingush between frames that need nsIFrame::UpdateOverflow called and frames that only have a transform that has changed. r=dbaron
- OverflowChangedTracker::AddFrame now accepts an enumerated type parameter to
  indicate if the overflow areas of children have changed (CHILDREN_CHANGED),
  the overflow areas of the children have changed and the parent have changed
  (CHILDREN_AND_PARENT_CHANGED), or if only the transform has changed
  (TRANSFORM_CHANGED).
- OverflowChangedTracker::Flush no longer falls back to calling
  nsIFrame::UpdateOverflow when a frame lacks a PreTransformOverflowAreas
  property.
- Added an additional change hint, nsChangeHint_ChildrenOnlyTransform, which
  results in TRANSFORM_CHANGED being passed in to
  OverflowChangedTracker::AddFrame.
- In nsIFrame::FinishAndStoreOverflow, the passed in overflow is now stored as
  the InitialTransformProperty for elements that are IsTransformed().
- Partially corrected Bug 926155, by only calling
  OverflowChangedTracker::AddFrame on parents of the sticky element during
  StickyScrollContainer::UpdatePositions, using CHILDREN_CHANGED.
2014-03-13 17:21:25 -07:00
Simon Montagu f3f1e4c964 Add some more logical getters to nsIFrame.h. Bug 735577, r=jfkthame 2014-04-16 01:03:30 -07:00
Ryan VanderMeulen abc7729b7a Backed out changeset 7be71c699b85 (bug 984226) for crashtest asserts. 2014-04-08 15:31:45 -04:00
Kearwood (Kip) Gilbert 74b70bdbd0 Bug 984226 - Add parameter to OverflowChangedTracker::AddFrame to distingush between frames that need nsIFrame::UpdateOverflow called and frames that only have a transform that has changed. r=dbaron
- OverflowChangedTracker::AddFrame now accepts an enumerated type parameter to
  indicate if the overflow areas of children have changed (CHILDREN_CHANGED) or
  if the transform has changed (TRANSFORM_CHANGED).
- OverflowChangedTracker::Flush no longer falls back to calling
  nsIFrame::UpdateOverflow when a frame lacks a PreTransformOverflowAreas
  property.
- Added an additional change hint, nsChangeHint_ChildrenOnlyTransform, which
  results in TRANSFORM_CHANGED being passed in to
  OverflowChangedTracker::AddFrame.
- In nsIFrame::FinishAndStoreOverflow, the passed in overflow is now stored as
  the InitialTransformProperty for elements that are IsTransformed().
- Partially corrected Bug 926155, by only calling
  OverflowChangedTracker::AddFrame on parents of the sticky element during
  StickyScrollContainer::UpdatePositions, using CHILDREN_CHANGED.
2014-03-13 17:21:25 -07:00
Masayuki Nakano 3cc4e99fc0 Bug 989212 Rename nsEventStates to mozilla::EventStates r=smaug
--HG--
rename : dom/events/nsEventStates.h => dom/events/EventStates.h
2014-04-03 13:18:36 +09:00
Kyle Huey b564544cf7 Bug 967364: Pass already_AddRefed by reference instead of by value. r=bsmedberg 2014-03-15 12:00:17 -07:00
Tom Hindle f68ff3f78a Bug 970363 - Make PeekOffset* methods return continue reason. r=roc 2014-03-13 08:14:37 -06:00
Simon Montagu e10e094099 Use logical text layout API for GetSkipSides, bug 789096, r=jfkthame 2014-03-13 00:39:33 -07:00
Simon Montagu 2110ef8dc6 Use logical text layout API in nsLineLayout. Bug 789096, r=jfkthame 2014-03-11 13:23:50 -07:00
Carsten "Tomcat" Book b99f5df532 Backed out changeset aeff4052ef00 (bug 789096) 2014-03-11 09:22:52 +01:00
Carsten "Tomcat" Book ea10325852 Backed out changeset 534a0efe7d3d (bug 789096) 2014-03-11 09:22:48 +01:00
Simon Montagu e7b593f84c Use logical text layout API for GetSkipSides. Bug 789096, r=jfkthame 2014-03-10 22:19:03 -07:00
Simon Montagu 5e0cf76c45 Use logical text layout API in nsLineLayout. Bug 789096, r=jfkthame 2014-03-10 22:19:03 -07:00
Seth Fowler b222d248ef Bug 63895 (Part 1) - Add helper methods for retrieving overflow areas in the frame's local coordinate space. r=dbaron 2014-03-10 15:41:14 -07:00
Daniel Holbert a72e872bab Bug 981127: Mark nsIFrame methods HasAllStateBits() & HasAnyStateBits() as 'const'. r=heycam 2014-03-07 15:58:37 -08:00
Seth Fowler 026e40d451 Backed out 3 changesets (bug 63895)
Backed out changeset ceafe92c7716 (bug 63895)
Backed out changeset 0199299ac111 (bug 63895)
Backed out changeset d78110a5cffa (bug 63895)

--HG--
extra : rebase_source : 76d8a63672dfdb000ff6db5d362231ed6e90c1bc
2014-03-06 16:59:56 -08:00
Simon Montagu b3b07173a0 Add more logical-coordinate API to nsIFrame. Bug 735577, r=jfkthame 2014-03-04 23:31:47 -08:00
L. David Baron 31c94b630e Bug 828173 patch 5: Call AddAnimationsAndTransitionsToLayer when we choose not to repaint when handling an UpdateTransformLayer hint, so that any new animations resulting from the style change get sent to the layer. r=mattwoodrow 2014-03-04 20:13:22 -08:00
Seth Fowler af955838a6 Bug 63895 (Part 1) - Add helper methods for retrieving overflow areas in the frame's local coordinate space. r=dbaron 2014-03-03 19:40:27 -08:00
Ehsan Akhgari ff2ce53025 Bug 977418 - Special case opacity:0.99 to treat it as opacity:1 for display purposes; r=roc
This helps avoid significant costs in our graphics code when websites
use opacity:0.99 as a hint for creating a stacking context only.
2014-03-03 09:42:16 -05:00
Matt Woodrow 6fa6614065 Bug 968555 - Don't create a stacking context for backface-visibility:hidden. r=dbaron 2014-02-27 15:57:45 +13:00
Wes Kocher 323c184017 Backed out 3 changesets (bug 63895) for debug crashtest failures on a CLOSED TREE
Backed out changeset 02e057fea56c (bug 63895)
Backed out changeset 80bd36a3d4f1 (bug 63895)
Backed out changeset 6609365ee797 (bug 63895)
2014-02-19 17:35:03 -08:00
Seth Fowler 0f4b58c37b Bug 63895 (Part 1) - Add helper methods for retrieving overflow areas in the frame's local coordinate space. r=dbaron 2014-02-19 16:03:24 -08:00
Daniel Holbert 3146c96a56 Bug 919806 followup: Reindent method declarations affected by NS_IMETHOD-removal. (whitespace-only; no review) DONTBUILD 2014-02-18 00:36:33 -08:00
Arnaud Sourioux 2d583fd28f Bug 919806: Get rid of NS_IMETHOD in nsIFrame.h and its implementations r=dholbert 2014-02-17 23:47:48 -08:00
Simon Montagu 8eb855ca1c Add some logical setters/getters to nsIFrame.h. Bug 735577, r=jfkthame 2014-02-12 23:55:06 -08:00
L. David Baron 09c9451bd3 Bug 91419 patch 6: Rename everything with IBSplitSpecialPrevSibling to IBSplitPrevSibling. r=mats 2014-02-06 17:45:31 -08:00
L. David Baron 1841dbc18e Bug 91419 patch 3: Rename everything with IBSplitSpecialSibling to IBSplitSibling. r=mats 2014-02-06 17:45:30 -08:00
L. David Baron c5c5881d3f Bug 91419 patch 1: Rename NS_FRAME_IS_SPECIAL to NS_FRAME_PART_OF_IBSPLIT. r=mats 2014-02-06 17:45:28 -08:00
Cameron McCormack 15cc32b681 Bug 960848 - Part 1: Make nsFrameState an enum and consolidate all frame state bit definitions in a single preprocessed file. r=dbaron 2014-02-05 12:59:39 +11:00
Matt Woodrow a3449e66b6 Bug 946952 - Run a 'compressed' paint up to 1 second after skipping the ColorLayer optimization. r=roc 2014-01-30 18:41:17 +13:00
Timothy Nikkel 8d1d02dfa0 Bug 962443. Make layout frame tree dumping code work better for Fennec and b2g. r=mats 2014-01-26 16:07:02 -06:00
Daniel Holbert 3713935b99 Bug 961354 part 2: Don't consider absolutely-positioned elements to be flex items, since they don't participate in normal flex layout. r=mats 2014-01-20 14:02:20 -08:00
Cameron McCormack 7f595ed104 Bug 960312 - Rename TEXT_IS_IN_SINGLE_CHAR_MI to NS_FRAME_IS_IN_SINGLE_CHAR_MI to make it clear it's global. r=roc 2014-01-16 16:10:09 +11:00
James Kitchener 3a014bfa5f Bug 442637 - Apply ssty font feature setting to appropriate MathML elements. r=roc
--HG--
rename : layout/generic/MathVariantTextRunFactory.cpp => layout/generic/MathMLTextRunFactory.cpp
rename : layout/generic/MathVariantTextRunFactory.h => layout/generic/MathMLTextRunFactory.h
2014-01-15 09:49:20 -05:00
Cameron McCormack 7a2dc7c7ea Bug 959016 - Add lldb Python command handlers for debugging Gecko, starting with frametree and frametreelimited. (DONTBUILD) r=ehsan 2014-01-14 09:24:22 +11:00
Mats Palmgren e6ea29ce0d Bug 956447 - Make it possible to get frame dumps in non-DEBUG builds. r=roc 2014-01-05 23:31:14 +00:00
Robert O'Callahan 10ddd09c03 Bug 953438 - Change nsIFrame::HasTerminalNewline to HasSignificantTerminalNewline since it doesn't make sense to check for a newline that gets converted to regular whitespace. r=jfkthame 2014-01-02 16:22:12 -05:00
David Zbarsky 641e051120 Bug 952977: Switch GetBBoxContribution to gfx::Matrix r=nical 2013-12-30 01:50:07 -05:00
David Zbarsky 56c69a7b3f Bug 952977: Switch IsSVGTransformed to gfx::Matrix r=nical 2013-12-29 18:35:53 -05:00
Jonathan Kew a7837e1ffa bug 735577 - pt 4.1 - use accessor functions for some physical-coordinate fields in nsHTMLReflowMetrics, in preparation for logicalization. r=smontagu 2013-12-27 17:59:52 +00:00
Jonathan Kew 86d6ec26b2 bug 735577 - pt 2 - add GetWritingMode() method to nsIFrame. r=smontagu 2013-12-27 17:58:46 +00:00
Robert Longson 2b4ee5d7ba Bug 940193 - rename nsSVGTextFrame2 to SVGTextFrame. r=dholbert
--HG--
rename : layout/svg/nsSVGTextFrame2.cpp => layout/svg/SVGTextFrame.cpp
rename : layout/svg/nsSVGTextFrame2.h => layout/svg/SVGTextFrame.h
2013-12-20 16:38:51 +00:00
Jonathan Watt df02daef15 Bug 946184 - Make sure that we reframe the nsIAnonymousContentCreator if any nsIAnonymousContentCreator::ContentInfo created content needs reframing. r=bz 2013-12-11 11:41:51 +00:00
Corey Ford e7f4d9aa00 Bug 916302 - Part 1: Generalize nsLayoutUtils::GetAllInFlowRects to support other types of frame rects beyond border rects. r=dholbert
This adds extra bits for the aFlags parameter to GetAllInFlowRects and GetAllInFlowRectsUnion, removes BoxToRect::GetRectFromFrameFun, and also adds a few more rect-getting methods to nsIFrame.
2013-12-03 11:13:16 -08:00
Cameron McCormack 2f884a142f Bug 945517 - Make nsIFrame::GetPseudoElementContent return Element* instead of nsIContent*. r=bz 2013-12-03 15:49:03 +11:00
Cameron McCormack 3674dd2b47 Bug 944246 - Make getComputedStyle pass in anonymous content when resolving pseudo-element style. r=bz 2013-12-03 10:57:50 +11:00
Robert O'Callahan 154278f277 Bug 931460. Part 1: When a <legend>'s frame is reparented to the <fieldset>, update StickyScrollContainers to match if necessary. r=mats
--HG--
extra : rebase_source : 05a224b4cf49b93c529a476f5c667d91a6e9f3e5
2013-11-23 22:48:26 +13:00
Frédéric Wang 62c4edbec0 Bug 415413 - Incorrect widths and heights of MathML with italics in table cells. r=karlt, r=roc 2013-11-25 09:20:20 -05:00
Robert O'Callahan 8cf17406d8 Bug 876321. Track restyling of top/left/right/bottom and treat such nodes as active scrolled roots. r=mattwoodrow
--HG--
extra : rebase_source : 24e7900efdb476a0533808956b9604d144e4db89
2013-09-09 17:08:41 -07:00
Daniel Holbert 7a53bd381f Bug 937298 part 2: De-virtualize nsIFrame::GetOffsetFromView, since it only has one implementation. r=mats 2013-11-11 23:57:44 -08:00
Daniel Holbert 8a195f54ce Bug 937298 part 1: Remove always-NS_OK return value from nsIFrame::GetOffsetFromView. r=mats 2013-11-11 23:57:42 -08:00
Robert O'Callahan 62b7c5862c Bug 911889. Part 2: Refactor MarkLayersActive code into its own class and be much more explicit about what it does. r=mattwoodrow
This also changes the functionality a little bit to track independent
per-property mutation counts and independent "content active" status.
2013-09-04 23:30:57 +12:00
Phil Ringnalda fb73812f4a Back out 0a88dee3b92b:dc5cc7d7b84d (bug 911889) for beaucoup unexpected assertions
--HG--
extra : rebase_source : a2a13633b6028c99a3c732dbbafe8c800bc32071
2013-10-28 23:38:02 -07:00
Robert O'Callahan 7633c2c898 Bug 911889. Part 2: Refactor MarkLayersActive code into its own class and be much more explicit about what it does. r=mattwoodrow
This also changes the functionality a little bit to track independent
per-property mutation counts and independent "content active" status.

--HG--
extra : rebase_source : e69b8e7a95d36720bd38d74f0789ede603e58a09
2013-09-04 23:30:57 +12:00
Markus Stange 4822f99e19 Bug 929362 - When refusing compositor animation during BuildLayer, set a property on the frame that disables all async animations on it forever. r=roc
--HG--
extra : rebase_source : 98c9b690a4842c19314dd46f5e531601b77fe527
2013-10-22 12:30:45 +02:00
Birunthan Mohanathas e3709383ec Bug 784739 - Switch from NULL to nullptr in layout/; r=ehsan
--HG--
extra : rebase_source : 0d0d9e11be9d39e4457bddd0bac7e19a50b91b0b
2013-10-08 14:47:21 -04:00
Matt Woodrow 9ce84d5903 Bug 916034 - Use a similar surface rather than an image surface for the canvas background cache when using azure. r=ajones 2013-10-02 22:12:34 +13:00
Masayuki Nakano 5dbc2a60e4 Bug 920377 part.31 Get rid of nsEvent r=roc 2013-10-02 12:46:04 +09:00
Masayuki Nakano a4221a463f Bug 920377 part.30 Get rid of nsGUIEvent r=roc 2013-10-02 12:46:03 +09:00
Matt Woodrow 76ab12a6bc Bug 921910 - Invalidate when we change the frame of an asynchronous ImageContainer that is part of a main-thread layer tree. r=roc 2013-10-02 16:05:49 +13:00
Ehsan Akhgari 77b5078c36 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
Ehsan Akhgari 290feb1ade Bug 921876 - Stop #including nsIFrame.h in nsLayoutUtils.h; r=roc
This patch does the following:
* Move nsIFrame::IntrinsicSize to mozilla::IntrinsicSize so that it can
  be forward-declared.
* Move a number of templated inline nsLayoutUtils methods to nsIFrame.
* Use mozilla::layout::FrameChildListID instead of the
  nsIFrame::ChildListID typedef in nsLayoutUtils.h.
* Move nsReflowFrameRunnable to its only user, nsProgressMeterFrame.cpp.
* Make a number of functions requiring nsIFrame.h out-of-line.
* Remove the nsIFrame.h #include from nsLayoutUtils.h and add it to the
  places which require it implicitly.
2013-09-30 17:26:04 -04:00
Daniel Holbert aa859ecb8b Bug 919813 part 1: Remove never-checked return value from frame methods SetPrevInFlow, SetNextInFlow, SetPrevContinuation, SetNextContinuation. r=mats 2013-09-25 10:54:55 -07:00
Birunthan Mohanathas 64f8d6e459 Bug 919729 - Remove unnecessary MOZILLA_INTERNAL_API checks from nsIFrame.h. r=bz 2013-09-25 09:48:20 -04:00
Mats Palmgren 4974add798 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
L. David Baron 6d628a60bd Bug 916751: Do not use nsIFrame::MovePositionBy from nsLineLayout. r=dholbert
Since bug 916751 is hard (for me) to test, I haven't confirmed for sure
that this fixes the bug.

However, it fixes the assertions that bug 911786 part 3 triggers in
layout/base/crashtests/317934-1.html through this codepath.
2013-09-17 04:44:16 -07:00
Daniel Holbert 67aafb5fe7 (no bug) fix a few s/it's/its/ typos in nsIFrame.h header-comments. DONTBUILD 2013-09-12 11:28:46 -07:00
Corey Ford c885568e56 Bug 911786 - Part 2: Reapply relative positioning when moving frames without reflowing them. r=dholbert 2013-09-11 11:51:42 -07:00
Corey Ford 23d185d13b Bug 911786 - Part 1: Store computed relative position offsets. r=dholbert 2013-09-10 11:33:59 -07:00
Daniel Holbert 9ae9b03297 (no bug) fix comment typos: s/incompete/incomplete/, s/th/the/
DONTBUILD because comment-only
2013-09-10 16:41:04 -07:00
Corey Ford fecfb82b09 Bug 886646 - Part 6: Implement sticky positioning, calculated on reflow and scroll. r=dbaron, r=dholbert 2013-09-06 09:35:16 -04:00
Ehsan Akhgari 3b51534dbb Bug 908746 - Move some macros from nsHTMLReflowState.h to nsIFrame.h so that we can stop #including nsHTMLReflowState.h in nsLayoutUtils.h; r=mats 2013-08-23 18:20:19 -04:00
Ehsan Akhgari 773a27b346 Bug 908778 - Don't #include nsAlgorithm.h in nsIFrame.h; r=mats 2013-08-23 18:17:19 -04:00
Ehsan Akhgari 63deffcd8f Bug 908778 - Don't #include nsStyleStructFwd.h in nsIFrame.h; r=mats 2013-08-23 18:16:59 -04:00
Ehsan Akhgari 2c35f715fe Bug 908778 - Don't #include nsRegion.h in nsIFrame.h; r=mats 2013-08-23 18:16:38 -04:00
Ehsan Akhgari 4c95c164b6 Bug 908778 - Don't #include gfxASurface.h in nsIFrame.h; r=mats 2013-08-23 18:16:16 -04:00
Ehsan Akhgari b1e52dbb47 Bug 908778 - Don't #include nsIContent.h in nsIFrame.h; r=mats 2013-08-23 18:15:45 -04:00
David Zbarsky 9ce94de31b Bug 903283: Don't include EventTarget.h in headers r=Ms2ger 2013-08-19 06:15:55 -04:00
Jonathan Kew c79c573b77 bug 904555 - clean up use of nsRect APIs in layout. r=roc 2013-08-14 13:27:20 +01:00
Markus Stange 1213991850 Bug 904541 - Don't #include Layers.h in nsPresContext.h. r=roc 2013-08-14 13:33:03 +02:00
Markus Stange 7e52591eee Bug 904539 - Don't #include ImageLoader.h in nsIFrame.h. r=roc 2013-08-14 13:29:11 +02:00
Markus Stange 575a74e089 Bug 904538 - Don't #include nsITheme.h in nsIWidget.h. r=roc 2013-08-14 13:19:55 +02:00
Trevor Saunders 99d8dc50c9 bug 659722 - remove _IMPL_NS_LAYOUT r=bz 2013-03-16 00:31:38 -04:00
Corey Ford 9adda71475 Bug 898794 - Store normal frame position before applying relative positioning. r=dbaron 2013-08-08 17:20:17 -07:00
Ehsan Akhgari cf5e28e06b Bug 902111 - Forward-declare nsIFrame in nsISelectionPrivate.h; r=bzbarsky 2013-08-06 16:19:11 -04:00
Cameron McCormack 1c674f84da Bug 899881 - Don't allow frames to have a null style context. r=dbaron 2013-08-03 14:11:05 +10:00
L. David Baron c2fb56d067 Bug 898888: Transition manager should use SetStyleContext rather than SetStyleContextWithoutNotification. r=nrc
While debugging bug 858937 I noticed that the transition manager was
calling nsIFrame::SetStyleContextWithoutNotification rather than
nsIFrame::SetStyleContext.  SetStyleContextWithoutNotification should
only be used for things that aren't really style changes, but are
instead changes we make during frame construction before things are
really initialized.  Anything that's really a dynamic style change, as
these are, should use SetStyleContext.

I realize I said the opposite in bug 780692 comment 186, and bz said the
same in bug 780692 comment 204, which is why this is the state that it
is.
2013-07-30 17:36:08 -07:00
Scott Johnson a1817949ef 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
Ryan VanderMeulen 6e81109389 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 e963713207 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
Nicholas Cameron cf168d842a Bug 700926; reshuffle background image drawing. r=roc
--HG--
extra : rebase_source : 4e4786a75cfdccc47ffa524331792eab3a7a83ea
2013-07-19 20:40:02 +12:00
Cameron McCormack aab2e6c2f0 Bug 890782 - Part 2: Make NS_STATE_SVG_NONDISPLAY_CHILD a global state bit and rename it. r=jwatt 2013-07-12 17:13:07 +10:00
Robert O'Callahan 0c93689fe2 Bug 880854. Part 1: Make nsIFrame::DumpFrameTree virtual and take no parameter, to be easier to call from buggy debuggers like gdb. r=mats
--HG--
extra : rebase_source : 0986652eb1d9710ceeba8cda4ac3d1273532929d
2013-06-18 23:39:58 +12:00
Timothy Nikkel 70b3f6bc38 Bug 880508. Remove defer invalidations code because we don't invalidate during painting anymore. r=matt.woodrow 2013-06-06 23:12:10 -05:00
Daniel Holbert 1cf81aec6e Bug 842065: Remove no-longer-necessary method nsIFrame::StyleDataExternal(). r=dbaron 2013-05-25 00:21:53 +08:00
Jonathan Watt c41c964383 Bug 874854 - Stop calling SchedulePaint for SVG transform attribute changes. r=longsonr 2013-05-23 08:04:21 +01:00
Mats Palmgren 2000b88d54 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
Mats Palmgren db4a38d7ac Bug 485149 - Using box-shadow on a <fieldset> with <legend> does not follow box shape. r=roc 2013-04-17 22:16:14 +02:00
Joshua Cranmer 1f24ef2b5e Bug 856108 - Port static analyses to clang, part 2e: use MOZ_STACK_CLASS in layout. r=mats 2013-04-11 22:20:45 -05:00
Robert O'Callahan 613ea8adbd Bug 841192. Part 14: Convert all usage of nsDisplayClip(RoundedRect) to use DisplayListClipState/DisplayItemClip. r=mattwoodrow
This patch does several things. Sorry.

In BuildDisplayList implementations, instead of wrapping display items in nsDisplayClip, we
push clip state onto the nsDisplayListBuilder and give the display items an
explicit clip when they're created.

In FrameLayerBuilder, we use the explicit clips we find on display items instead of
computing our own.

We remove nsDisplayClip and everything that depends on it.

We remove ExplodeAnonymousChildLists. With nsDisplayClip gone, and
nsDisplayOptionEventGrabber removed in a previous patch, there are no
anonymous child lists.

nsDisplayItem::TryMerge implementations need to make sure they have the same
clip before being merged.

I ripped out the part of PruneDisplayListForExtraPage that adjusts clip rects.
As far as I can tell, it isn't actually necessary.

--HG--
extra : rebase_source : 6f3988b385d0ac54ab26fad10b12173884441f48
2013-03-04 22:56:02 +13:00
Cameron McCormack 10e5ff17b2 Bug 856879 - Remove constructor arguments argument from style struct macros. r=dbaron 2013-04-02 12:45:48 +11:00
Boris Zbarsky 7f102d7f2d Bug 852428 part 2. Make nsIFrame::Init infallible. r=dholbert 2013-03-19 21:47:48 -04:00
Matt Woodrow fbfd2fa87a Bug 844750 - Don't use per-display-item invalidation for table frames. r=roc 2013-03-08 15:18:45 +13:00
Timothy Nikkel d725bb6cb7 Bug 846888. Part 1. Update the in popup frame state bits when we swap docshells. r=mattwoodrow 2013-03-04 13:49:39 -06:00
Mats Palmgren 1b85e9545e Bug 838642 - Introduce nsFrameList::StartRemoveFrame/ContinueRemoveFrame that can be used in concert to remove a frame in O(1) time from a set of frame lists when its exact frame list is unknown. Use them to make nsContainerFrame::StealFrame O(1). r=bzbarsky 2013-02-28 00:05:44 +01:00
L. David Baron 309d5f8f42 Bug 781360 patch 4: Remove the Get from nsStyleContext::GetStyleData and nsIFrame::GetStyleDataExternal, which never return null. r=dholbert 2013-02-16 13:51:03 -08:00
L. David Baron c5b9eee040 Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert
Except for the changes in:
  layout/generic/nsIFrame.h (part)
  layout/style/nsComputedDOMStyle.h (all)
  layout/style/nsRuleNode.cpp (part)
  layout/style/nsStyleContext.cpp (part)
  layout/style/nsStyleContext.h (part)
(see patch 3b in the bug), this patch was written with the sed script:
s/\<GetStyle\(Font\|Color\|List\|Text\|Visibility\|Quotes\|UserInterface\|TableBorder\|SVG\|Background\|Position\|TextReset\|Display\|Content\|UIReset\|Table\|Margin\|Padding\|Border\|Outline\|XUL\|SVGReset\|Column\)\>/Style\1/g
2013-02-16 13:51:02 -08:00
L. David Baron 59101dc21e Bug 781360 patch 2: Rename nsRuleNode::GetPresContext to PresContext, since it can never return null. r=dholbert 2013-02-16 13:04:54 -08:00
L. David Baron 0836abe85d Bug 781360 patch 1: Rename nsStyleContext::GetRuleNode to RuleNode, since it can never return null. r=dholbert
This makes it conform to our convention that getters returning pointers
that can never be null do not begin with "Get".

nsStyleContext's rule node is never null because we require a rule node
in order to construct a style context.
2013-02-16 13:04:53 -08:00
Daniel Holbert e208d238e9 Bug 834107: Replace helper-function GetContainingBlockFor() with direct calls to nsIFrame::GetContainingBlock(), in nsComputedDOMStyle.cpp. r=dbaron 2013-02-16 10:34:34 -08:00
Robert O'Callahan 42e294f8cb Bug 840902. Part 2: Remove nsresults from various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : de498510bf8d85d9b0b2fab0137ef3be01c9adfa
2013-02-15 00:12:27 +13:00
L. David Baron 067fe7cbfb Bug 841789, patch 3: Some removal of unneeded style context null-checks and comment cleanup. r=dholbert 2013-02-15 21:38:34 -08:00
L. David Baron 50d4e367af Bug 841789, patch 1: Rename nsIFrame::GetStyleContext() to nsIFrame::StyleContext() since it can never return null. r=dholbert
This makes it conform to our convention that getters returning pointers
that can never be null do not begin with "Get".
2013-02-15 21:38:33 -08:00
Cameron McCormack 56be0350f9 Bug 655877 - Part 41b: Make SVG text selectable with the mouse. r=roc,jwatt 2013-02-11 17:22:18 +11:00
Mats Palmgren 7f33878bb1 Bug 606642 - Do not remove the [Excess]OverflowContainers properties before destroying its frames. Carefully check after destroying each frame that the property is still alive. r=roc 2013-02-11 03:28:50 +01:00
Jeff Walden be633156a5 Bug 835648 - Move typed enum support to a new header. r=Ms2ger 2013-01-28 16:33:17 -08:00
Ryan VanderMeulen 11e2a8437f Backed out changeset 3eb633a97c1f (bug 835648) for suspected Windows orange on a CLOSED TREE. 2013-01-29 19:01:45 -05:00
Jeff Walden 88df194b4b Bug 835648 - Move typed enum support to a new header. r=Ms2ger
--HG--
extra : rebase_source : 8c912fba889c1c5435e3619714071502fbfb30a3
2013-01-28 16:33:17 -08:00
Mats Palmgren b7ae90666d Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
Robert O'Callahan 943cb99eff Bug 825866. Part 8: Mass-rename of nsIView to nsView. r=tnikkel
This was autogenerated by basically replacing all occurrences of the word "nsIView" with nsView.

--HG--
rename : view/public/nsIView.h => view/public/nsView.h
2013-01-04 02:23:11 +13:00
Robert O'Callahan 96737c37d8 Bug 818643. Issue an NotifyRenderingChanged callback on nsDisplayItems when we invalidate anything to do with the display item. Make nsDisplayCanvasBackground override NotifyRenderingChanged to invalidate the cached background image. r=mattwoodrow
--HG--
extra : rebase_source : c28b2804d647a991f7d2cb8167fcf039c1835d75
2012-12-10 18:34:31 +13:00
Matt Woodrow 67ac0979d2 Bug 815666 - Use OverflowUpdateTracker to avoid calling UpdateOverflow on the same frame multiple times. r=roc 2012-12-10 15:33:04 +13:00
Matt Woodrow cebb3c32c4 Bug 815666 - Add a helper class to coalesce frames that need their overflow updated. r=roc 2012-12-10 15:32:55 +13:00
Robert O'Callahan 8e7070bef2 Bug 816458. Instead of removing the MAY_BE_TRANSFORMED bit in certain frame classes, add an nsIFrame::SupportsCSSTransforms method and call it when necessary. r=mats 2012-12-04 17:50:05 +13:00
Daniel Holbert 7ccdd360a1 Bug 813358 part 1: Remove unnecessary nsBoxLayoutState argument from various XUL frame-sorting-related methods. r=dbaron 2012-11-30 15:25:32 -08:00
Robert O'Callahan 8868e9761e Bug 815030. Invalidate cached background images in when a frame gets a visual style change. r=mattwoodrow
--HG--
extra : rebase_source : eef4784ea2d4ef0f88d6dfdbf3258d1b8416f443
2012-11-27 22:05:10 +13:00
Robert O'Callahan 65b20a64a3 Bug 810470. Part 2: Change nsDisplayBackground invalidation to store and compare the background positioning rect. r=mattwoodrow
--HG--
extra : rebase_source : c9141ba46d034fc496a3e9e33efce5b022bec41c
2012-11-08 10:05:32 -05:00
Ehsan Akhgari c284cd4124 Bug 810355 - Convert nsDidReflowStatus into an enum class; r=dholbert 2012-11-13 22:47:33 -08:00
Daniel Holbert be761c3faf Bug 806002: Convert nsDidReflowStatus into an enum. r=dbaron 2012-11-08 17:27:48 -08:00
Matt Woodrow 8a2c2a0e02 Bug 807563 - Update the overflow areas of all preserve-3d children when the transform changes. r=roc 2012-11-05 12:12:05 +13:00
Mats Palmgren 1a123c0b7d Bug 806056 - Add a frame bit that says if a frame is allowed to have abs/fixed pos. children when the style so indicates (position/transform usually). Copy the bit to next-in-flows. Don't call MarkAsAbsoluteContainingBlock for style changes on an existing frame unless that bit is set (style changes that recreates the frame resets it of course). Assert in MarkAs[Not]AbsoluteContainingBlock() that the bit is set. r=bz 2012-11-02 01:52:59 +01:00
Matt Woodrow 1509c7378c Bug 806256 - Only recompute preserve-3d/perspective children overflow areas if the frame size changed. r=roc 2012-11-01 14:25:45 +13:00
Matt Woodrow 2bc273f870 Bug 806256 - Don't invalidate frames when the overflow area changes, DLBI will handle it. r=roc 2012-11-01 14:25:44 +13:00
Robert O'Callahan 935f4ee58f Bug 804323. Mark newly-transformed frames as abs-pos containers (or not). r=bzbarsky 2012-10-26 22:11:24 +13:00
Ryan VanderMeulen f531358b85 Backout 1ebc3b1b8feb, 205c1c846d70 (bug 801488), and e4367fd2043f (bug 804323) due to b-c crashes. 2012-10-25 07:53:36 -04:00
Robert O'Callahan 3de0463992 Bug 804323. Mark newly-transformed frames as abs-pos containers (or not). r=bzbarsky 2012-10-25 00:35:29 +13:00
Robert O'Callahan aef1d59b6f Bug 703241. PresShell::DoScrollContentIntoView and PresShell::ScrollFrameRectIntoView should take transforms into account. r=matspal
--HG--
extra : rebase_source : e1a16f9a19e78ea71044ee78af9fdbf00ec48c0b
2012-06-22 17:06:49 +12:00
Trevor Saunders 244a675d42 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
Matt Woodrow a70a9063e5 Bug 797295 - Add support for the layer attribute to nsImageBoxFrame. r=roc 2012-10-11 18:44:59 +13:00
Chris Jones d069aa6366 Bug 790505, part 4: If we're just updating the transform of a prerendered layer, then schedule an empty transaction to skip unnecessary display-list overhead. r=mattwoodrow,roc 2012-10-02 22:55:52 -07:00
Chris Jones bae3518548 Bug 790505, part 2: Add a GetLayerTransformForFrame() helper for computing a frame's layer transform outside a proper transaction, and mark frames that have been fully prerendered. r=roc 2012-10-02 22:55:50 -07:00
Chris Jones 38cde694be Back out bug 790505 for leaking 2012-10-03 00:21:08 -07:00