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

66 Коммитов

Автор SHA1 Сообщение Дата
Cameron McCormack 77856721a3 Bug 1180118 - Part 9: Clear nsCSSSelector pointers in the pending restyle tracker if they might be stale. r=bzbarsky 2015-08-05 22:42:21 +10:00
Cameron McCormack f44169e276 Bug 1180118 - Part 7: Split out FindClosestRestyleRoot and allow passing in a pre-computed restyle root to AddPendingRestyle. r=bzbarsky 2015-08-05 22:42:21 +10:00
Cameron McCormack 3ee4a03170 Bug 1180118 - Part 3: Convert eRestyle_SomeDescendants into eRestyle_Self for elements that match selectors. r=bzbarsky 2015-08-05 22:42:20 +10:00
Cameron McCormack a51940e7a6 Bug 1180118 - Part 2: Add eRestyle_SomeDescendants restyle hint and pass associated restyle hint data into restyle methods. r=bzbarsky 2015-08-05 22:42:20 +10:00
Carsten "Tomcat" Book 94b10d301f Backed out 13 changesets (bug 1180118) for crashes on a CLOSED TREE
Backed out changeset c65d298d7cfa (bug 1180118)
Backed out changeset 7c5ebadc3fc9 (bug 1180118)
Backed out changeset 91a3e2205388 (bug 1180118)
Backed out changeset 15ad6049b940 (bug 1180118)
Backed out changeset 9b41cd9f2bc5 (bug 1180118)
Backed out changeset 37493f6eef20 (bug 1180118)
Backed out changeset b7ec8d4d2d7e (bug 1180118)
Backed out changeset cfeeae42d514 (bug 1180118)
Backed out changeset 9bcc3233f3c8 (bug 1180118)
Backed out changeset b99c358a6fea (bug 1180118)
Backed out changeset 4a7b79980353 (bug 1180118)
Backed out changeset 20984dfa4302 (bug 1180118)
Backed out changeset ef165b896cf4 (bug 1180118)
2015-08-04 12:20:20 +02:00
Cameron McCormack 96ce1278fa Bug 1180118 - Part 9: Clear nsCSSSelector pointers in the pending restyle tracker if they might be stale. r=bzbarsky 2015-08-04 17:27:53 +10:00
Cameron McCormack ff64737496 Bug 1180118 - Part 7: Split out FindClosestRestyleRoot and allow passing in a pre-computed restyle root to AddPendingRestyle. r=bzbarsky 2015-08-04 17:27:53 +10:00
Cameron McCormack 1893e1d44d Bug 1180118 - Part 3: Convert eRestyle_SomeDescendants into eRestyle_Self for elements that match selectors. r=bzbarsky 2015-08-04 17:27:52 +10:00
Cameron McCormack 456e7234ef Bug 1180118 - Part 2: Add eRestyle_SomeDescendants restyle hint and pass associated restyle hint data into restyle methods. r=bzbarsky 2015-08-04 17:27:52 +10:00
Jan Beich cfd87b0f40 Bug 1151829 - Unbreak build on non-SPS platforms after bug 1093934. r=rbarker r=dholbert r=mstange 2015-04-14 19:38:47 +02:00
Wes Kocher 7c4595242e Backed out changeset 84ebfdd3c94c (bug 1151829) for windows build bustage CLOSED TREE 2015-04-09 13:40:50 -07:00
Jan Beich eb62c291f5 Bug 1151829 - Unbreak build on non-SPS platforms after bug 1093934. r=rbarker 2015-04-07 17:26:00 -04:00
Jan Beich d8a32020cb Bug 1145988 - Unbreak build on non-SPS platforms after bug 1129249. r=dholbert f=chiajung 2015-04-02 21:43:48 +02:00
chiajung hung c56f9b604b Bug 1129249 - Add a "restyle" feature to profiler and split the style label in Cleopatra based on the restyleSource, r=dholbert,mstange
--HG--
extra : rebase_source : 0da0203824cfbf2265b42229b298274156633ddd
2015-03-19 02:19:00 +01:00
L. David Baron 52aec10e19 Bug 992077 patch 5 - Remove implementation of OverflowChangedTracker::CHILDREN_AND_PARENT_CHANGED. r=mats
This simplifies the API of the OverflowChangedTracker.
2015-02-16 16:34:29 +13:00
L. David Baron 61bcb1749a Bug 1115812 patch 6 - Move ProcessRestyles from RestyleTracker to RestyleManager. r=heycam
This is needed for the following patch, so that it can access a member
variable of RestyleManager.
2015-01-13 21:03:12 -08:00
Cameron McCormack fdaf162ad8 Bug 1098270 - Null check curData in AddPendingRestyle to avoid crashing on style sheet updates in ShadowRoots outside of the composed document. r=dbaron 2014-11-27 09:47:52 +11:00
Cameron McCormack f5e6faa47e Bug 979133 - Add facility to log the restyle process. r=dbaron
Set the MOZ_DEBUG_RESTYLE environment variable and every restyle will have
detailed logging printed to stderr. By default, restyles for animations are
not logged; you can include them by also setting MOZ_DEBUG_RESTYLE_ANIMATIONS.

If you wish to limit restyle logging to a particular change, you can call
nsPresContext::StartRestyleLogging() and nsPresContext::StopRestyleLogging()
at appropriate points. (You might want to add a couple of helper methods
temporarily on nsIDocument and then expose them to your page with Web IDL
to make them easier to call.) You do not need to have set MOZ_DEBUG_RESTYLE
for this to work.
2014-09-25 15:45:36 +10:00
Phil Ringnalda 340fd10e38 Back out c0c410aed86f (bug 979133) for -wError bustage
CLOSED TREE
2014-09-24 21:06:22 -07:00
Cameron McCormack 2a28d6d5eb Bug 979133 - Add facility to log the restyle process. r=dbaron
Set the MOZ_DEBUG_RESTYLE environment variable and every restyle will have
detailed logging printed to stderr.  By default, restyles for animations are
not logged; you can include them by also setting MOZ_DEBUG_RESTYLE_ANIMATIONS.

If you wish to limit restyle logging to a particular change, you can call
nsPresContext::StartRestyleLogging() and nsPresContext::StopRestyleLogging()
at appropriate points.  (You might want to add a couple of helper methods
temporarily on nsIDocument and then expose them to your page with Web IDL
to make them easier to call.)  You do not need to have set MOZ_DEBUG_RESTYLE
for this to work.
2014-09-25 13:13:14 +10:00
Cameron McCormack 377ef30058 Bug 1062732 - Avoid tracking descendants for restyling if we are force restyling the entire subtree. r=dbaron 2014-09-19 11:12:31 +10:00
Cameron McCormack b973a953c7 Bug 1063384 - Make RestyleTracker::DoProcessRestyle's restylesToProcess not have an mDescendants array in each element. r=dbaron 2014-09-19 11:12:30 +10:00
Cameron McCormack 90dc98cfbe Bug 931668 - Part 24: Avoid copying RestyleData::mDescendants when modifying an existing entry. r=dbaron
--HG--
extra : rebase_source : 0b9905bdff6f9ceec823b2091aadc39f0ca467bc
2014-09-05 13:48:48 +10:00
Cameron McCormack d32c1d2bfc Bug 931668 - Part 21: Fix issue where not all pending-restyle descendants are restyled. r=dbaron
--HG--
extra : rebase_source : 824fe576885ec4f5ab086499dfaa6e95456afd50
2014-09-05 13:48:47 +10:00
Cameron McCormack ba762a2f5c Bug 931668 - Part 10: Record pending restyles of restyle root descendants and ensure we restyle them if we didn't get to them. r=dbaron
--HG--
extra : rebase_source : b259e02c38362a12735158e30d6aa54556cf54ab
2014-09-05 13:48:45 +10:00
Ehsan Akhgari 60360fc645 Bug 1060985 - Fix more bad implicit constructors in layout; r=roc 2014-08-31 23:36:37 -04:00
L. David Baron f7374aad6e Bug 996796 patch 18 - Fix RestyleTracker to handle restyle hints exactly rather than pessimistically when restyling continuations with varying styles (e.g., spans inside ::first-line or ::first-letter). r=heycam
This will be necessary when we use the restyle tracker for the
animation-only style flush, because animation-only style flushes need to
update *only* the animation style data and no other style data.  Thus
using the RestyleTracker for animation-only style flushes requires that
we do this.
2014-08-03 13:11:55 -07:00
L. David Baron a39da5881c Back out bug 996796 patch 18 through patch 25 (changesets fbe97c2db729 through 9719c08c3144) to fix 50%-of-the-time Android 4.0 debug orange from single assertion ("Why did this not get handled while processing mRestyleRoots?", layout/base/RestyleTracker.cpp, line 87) in gfx/tests/crashtests/815489.html . 2014-08-03 01:22:07 -07:00
L. David Baron d2fe2e8c79 Bug 996796 patch 18 - Fix RestyleTracker to handle restyle hints exactly rather than pessimistically when restyling continuations with varying styles (e.g., spans inside ::first-line or ::first-letter). r=heycam
This will be necessary when we use the restyle tracker for the
animation-only style flush, because animation-only style flushes need to
update *only* the animation style data and no other style data.  Thus
using the RestyleTracker for animation-only style flushes requires that
we do this.
2014-08-02 19:37:47 -07:00
L. David Baron fea45deb80 Bug 996796 patch 6 - Adjust checks of restyle types to accomodate new types weaker than eRestyle_Self. r=heycam
FIXME: Adjust for eRestyle_Force if bug 931668 lands first.

Later patches will add such types that are like eRestyle_Self but that
only replace the style attribute, animation rule, or transition rule.
2014-08-02 19:37:43 -07:00
L. David Baron a13b5c1919 Bug 996798 - Add a typedef to make it easier to change the size of nsWrapperCache/nsINode flags. r=bzbarsky 2014-06-18 17:07:26 -07:00
Mats Palmgren a6feda0f22 Bug 508665 - part 1, Change the signature of SetParent/GetParent from nsIFrame* to nsContainerFrame*. r=roc 2014-05-24 22:20:39 +00:00
Kearwood (Kip) Gilbert ae2d46fb74 Bug 1005405 - OverflowChangedTracker::Flush() no longer downgrades parent frames from CHILDREN_AND_PARENT_CHANGED to CHILDREN_CHANGED. r=dbaron
- When OverflowChangedTracker::Flush() coalesces multiple changes
  simultaneously, it was possible to downgrade parent frames from
  CHILDREN_AND_PARENT_CHANGED to CHILDREN_CHANGED, resulting in an incomplete
  update.
- This patch ensures that the strongest ChangeKind is retained when cascading
  up to parent frames.
2014-05-06 11:23:00 +02: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
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
Robert O'Callahan 78c80034d7 Bug 944291. Part 2: Mark parent frames whose child frames' overflow have changed as always needing UpdateOverflow called. r=matspal 2013-12-14 02:21:03 +13:00
Robert O'Callahan 55beb7d2db Bug 944291. Part 1: Add SplayTree::find. r=waldo 2013-12-13 16:12:07 +13: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
Robert O'Callahan 03e7828db2 Bug 910989. Remove nsTHashtable::Init, fallible allocation, and MT hashtables. r=ehsan,bsmedberg
--HG--
extra : rebase_source : 0787130b1814c74bfb38dc178de94022f0b2e64e
2013-09-02 20:41:57 +12:00
Ehsan Akhgari 2621b190f1 Bug 906790 - Minimize layout/base #includes; r=roc 2013-08-19 18:55:18 -04:00
L. David Baron a7c8d44db9 Bug 896138 patch 4: Move restyle management code from nsCSSFrameConstructor to RestyleManager. r=heycam
This moves restyling management out of nsCSSFrameConstructor (thus
reducing its size), and keeps the restyling code closer together.

This is the first of two big chunks of code moved in this patch series.
A later patch in this series will move related code from nsFrameManager
into the same destination file.
2013-07-20 12:14:25 -07:00
L. David Baron 3dab5e1ef8 Bug 896138 patch 1: Move RestyleTracker and OverflowChangedTracker out of nested namespace mozilla::css (which shouldn't exist) into namespace mozilla. r=heycam 2013-07-20 12:14:24 -07:00
Masatoshi Kimura 957042f394 Bug 859018 - Remove the MSVC exemption for FAIL_ON_WARNINGS in layout. r=dbaron 2013-04-28 19:02:35 +09:00
Matt Woodrow b44fe181ee Bug 850672 r=roc 2013-03-21 15:33:00 +13:00
L. David Baron e032a2344d Bug 849263: Make OverflowChangedTracker actually sort by depth in the tree where it intended to. r=roc 2013-03-10 12:44:13 -07:00
Matt Woodrow b6d1579a17 Bug 840480 r=roc 2013-02-20 13:13:01 +13:00
Matt Woodrow ef1378f2db Bug 832611 - Use NotifyDestroyingFrame to remove frames from the OverflowChangedTracker. r=roc 2013-01-26 14:34:58 +13:00
Matt Woodrow 1ba66c5c11 Bug 822906 - Use SplayTree to remove deleted frames from RestyleTracker. r=roc 2013-01-16 12:12:40 +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