Commit Graph

535 Commits

Author SHA1 Message Date
Brian Birtles
b9b6b9f62d Bug 1239945 part 2 - Drop CommonAnimationManager::ContentOrAncestorHasAnimation; r=dholbert
This was added in bug 780692 to work around assertions that arose due to the
inconsistent state introduced by mini-flushes. However, that workaround
no longer seems necessary. In particular, the crashtest for bug 813372 no
longer reports failed assertions when we remove this method and nor do any
other tests.

I'm not sure exactly what changed about how we do mini-flushes but I suspect
it was bug 960465 or one of the related follow-ups.
2016-02-24 15:42:33 +09:00
Cameron McCormack
471cf640eb Bug 1248864 - Part 1: Move RestyleManager.h to EXPORTS.mozilla. r=dholbert 2016-02-24 18:01:12 +11:00
Cameron McCormack
8a879b8032 Bug 1244068 - Part 4: Use StyleSetHandle instead of concrete style set class in most places. r=dholbert 2016-02-24 18:01:11 +11:00
Cameron McCormack
1fd85b244f Bug 1244068 - Part 3: Factor out nsStyleSet getting in RestyleManager/ElementRestyler. r=dholbert 2016-02-24 18:01:10 +11:00
Boris Chiou
32cdf253b7 Bug 1244049 - Part 2: Replace nsCSSPseudoElements::Type with CSSPseudoElementType. r=dbaron
Also, try to use forward declaraions for CSSPseudoElementType;
2016-02-17 21:37:00 +01:00
Boris Chiou
16edfa82cd Bug 1244049 - Part 1: Define scoped enum for CSSPseudoElement type. r=dbaron 2016-02-16 23:07:00 +01:00
Ting-Yu Lin
122e5b9aeb Bug 1227927 Part 2 - Remove nsIFrame::GetFirstPrincipalChild(). r=mats 2016-01-29 22:42:14 +08:00
Xidorn Quan
c26e860288 Bug 1230034 part 6 - Convert all frame properties which do not hold pointer to be typed. r=dbaron 2016-01-28 14:23:59 +11:00
Xidorn Quan
56b9331e0f Bug 1064843 part 10 - Create and render backdrop frame for top layer frames. r=dbaron 2016-01-28 10:11:00 +11:00
Brian Birtles
96518aab2c Bug 1232577 part 18 - Drop RestyleManager::mLastUpdateForThrottledAnimations; r=heycam
RestyleManager currently has a piece of state for tracking if throttled
animations are up-to-date or not. Actually, it's not so much about throttled
animations but really about outstanding changes to animation styles (which
is typically expected to be due to throttling animations but there are
other cases that invalidate the animation style rule that we should be
considering here).

We now have that same information stored in the EffectCompositor so we can
remove the redundant state from RestyleManager. Furthermore, the state stored
in EffectCompositor is more accurate since it captures the case when animation
style needs to be updated twice within a tick, or when nothing needs to be
updated within a tick.

This patch, therefore, introduces EffectCompositor::HasPendingStyleUpdates in
place of setting RestyleManager::mLastUpdateForThrottledAnimations.

nsTransitionManager also uses mLastUpdateForThrottledAnimations to warn if we
have not processed throttled animations. We can't use HasPendingStyleUpdates
here however, since it will return true in the case where we have triggered new
transitions in the process of restyling. However, any new transitions will
trigger "standard" (i.e. not throttled) restyles so we introduce another
method, HasThrottledStyleUpdates, that returns true only if we have outstanding
throttled updates and use this for the warning inside nsTransitionManager.
2016-01-13 07:54:55 +09:00
Brian Birtles
39d4cf8ebc Bug 1232577 part 17 - Move AddStyleUpdatesTo to EffectCompositor; r=heycam 2016-01-13 07:54:55 +09:00
Nicholas Nethercote
4fab88afad Bug 1232852 (part 3) - Remove unused parameters from some accessibility code. r=tbsaunde. 2015-12-15 21:24:06 -08:00
Brian Birtles
6a634e5c4f Bug 1229280 - Move animation generation from AnimationCollection to EffectSet; r=dbaron 2016-01-06 11:04:05 +09:00
Boris Zbarsky
7caf2ad0a6 Bug 1230639 - Propagate the namespace ID to AttributeRuleProcessorData on attribute changes. r=dbaron 2015-12-05 01:09:13 -05:00
Markus Stange
55bb4c2297 Bug 1147673 - Make display items know about their scroll clips. r=tn, r=roc 2015-12-22 16:54:19 +01:00
Carsten "Tomcat" Book
791f2a3ca3 Backed out changeset 68b33692bed3 (bug 1147673) 2015-12-16 11:52:37 +01:00
Markus Stange
7ce6f2aca9 Bug 1147673 - Make display items know about their scroll clips. r=tn, r=roc 2015-12-12 10:58:37 -05:00
Nicholas Nethercote
a0edd1fb5f Bug 1230863 - Remove unused nsPresContext args from many functions. r=roc. 2015-12-06 17:15:53 -08:00
Brian Birtles
6c7b2850b3 Bug 1226118 part 12a - Make RestyleManager::GetMaxAnimationGenerationForFrame used frame-based GetAnimationCollection; r=dholbert 2015-12-04 08:34:17 +09:00
L. David Baron
83576c6dce Bug 1224251 patch 4 - Convert UpdateOpacityLayer to RepaintFrame when changing opacity between 1 and non-1 on table parts. r=mattwoodrow 2015-11-30 21:25:55 -08:00
L. David Baron
9262d2ab6d Bug 1224251 patch 2 - Add nsChangeHint_UpdateUsesOpacity to say when opacity changes between 1 and non-1. r=xidorn 2015-11-30 21:25:54 -08:00
Carsten "Tomcat" Book
61ef45f0a5 Backed out changeset 5c4a581885e4 (bug 1224251) 2015-11-30 12:10:44 +01:00
Carsten "Tomcat" Book
7cb6f96390 Backed out changeset 0a2d8e926a66 (bug 1224251) 2015-11-30 12:10:42 +01:00
L. David Baron
d1f41b5553 Bug 1224251 patch 4 - Convert UpdateOpacityLayer to RepaintFrame when changing opacity between 1 and non-1 on table parts. r=mattwoodrow 2015-11-29 23:15:01 -08:00
L. David Baron
9a2c3eb658 Bug 1224251 patch 2 - Add nsChangeHint_UpdateUsesOpacity to say when opacity changes between 1 and non-1. r=xidorn 2015-11-29 23:15:00 -08:00
Cameron McCormack
fd0da7375c Bug 1222745 - Restore eRestyleResult_StopWithStyleChange optimization for shared style contexts by comparing rule nodes for inherited style data changes. r=dbaron 2015-11-17 15:09:55 +11:00
Cameron McCormack
8f06b1a270 Bug 1222226 - Don't return eRestyleResult_StopWithStyleChange if the old style context is shared. r=dbaron 2015-11-08 11:06:14 +11:00
Cameron McCormack
0c745d77fa Comment typo fix; no bug. (DONTBUILD) 2015-10-30 10:38:20 +11:00
L. David Baron
e3b828dd57 Bug 1209603 patch 6b - Rename nsStyleContext::HasCachedInheritedStyleData to HasCachedDependentStyleData. r=heycam 2015-10-19 20:42:28 -07:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Vivien Nicolas
c665f8cc45 Bug 1211858 - Add a hint for the Restyle label when the id is unavailable. r=roc,benwa 2015-10-07 02:14:00 +02:00
Daniel Holbert
e99261c6e5 Bug 1032613 part 2: Make RestyleManager::AddSubtreeToOverflowTracker skip frames that don't maintain overflow areas. r=dbaron 2015-10-01 20:05:26 -07:00
Daniel Holbert
e3f3a17054 Bug 1032613 part 1: Promote FrameMaintainsOverflow to be a public nsIFrame method, & implement it using HasAllStateBits. r=dbaron 2015-10-01 20:05:25 -07:00
Daniel Holbert
7821df6691 Bug 1206996: Use range-based 'for' syntax to iterate across nsFrameLists in RestyleManager. r=tn 2015-09-22 11:21:44 -07:00
Cameron McCormack
e902dbd417 Bug 1203766 - Part 4: Add a "restyle generation" counter, which increments whenever we process pending restyles. r=bzbarsky 2015-09-17 12:08:20 +10:00
Hiroyuki Ikezoe
803a8a8e23 Bug 1197620 - Part 1 - Stop all animations in destroyed frames. r=bbirtles 2015-09-14 23:42:00 +02:00
Cameron McCormack
6eaea62895 Bug 1202512 - Part 1: Add Element flags to record whether an eRestyle_SomeDescendants restyle is pending for it. r=bzbarsky 2015-09-12 19:08:10 +10:00
Hiroyuki Ikezoe
7a289dfa4d Bug 1151694 - Part 1 - Move CommonAnimationManager::sLayerAnimationInfo into LayerAnimationInfo.(cpp|h). r=bbirtles 2015-09-03 22:59:00 +02:00
Cameron McCormack
3461dceef9 Bug 1192302 - Part 2: Traverse the frame tree when processing eRestyle_SomeDescendants. r=bzbarsky 2015-09-04 10:00:14 +10:00
Cameron McCormack
1a74197442 Bug 1192302 - Part 1: Make MustCheckUndisplayedContent take its frame as an argument. r=bzbarsky 2015-09-04 10:00:14 +10:00
Cameron McCormack
12128e6765 Bug 1180120 - Part 7: Add eRestyleResult_StopWithStyleChange. r=dbaron 2015-08-29 06:13:48 +10:00
Cameron McCormack
c51e2cb1c4 Bug 1180120 - Part 6.2: Refactor MaybeReframeFor{Before,After}Pseudo. r=dbaron 2015-08-29 06:13:48 +10:00
Cameron McCormack
948e42a3ab Bug 1180120 - Part 6.1: Factor out some of RestyleUndisplayedDescendants. r=dbaron 2015-08-29 06:13:47 +10:00
Cameron McCormack
b73cb02f51 Bug 1180120 - Part 6: Replace HasSameCachedStyleData call with samePointerStructs bit tests. r=dbaron 2015-08-29 06:13:47 +10:00
Cameron McCormack
8014d86d43 Bug 1180120 - Part 5: Factor out section of ElementRestyler::Restyle that calls AddPendingRestylesForDescendantsMatchingSelectors. r=dbaron 2015-08-29 06:13:47 +10:00
Cameron McCormack
1e174425a6 Bug 1180120 - Part 4: Add an outparam to CalcStyleDifference to indicate which struct pointers were identical. r=dbaron 2015-08-29 06:13:47 +10:00
Cameron McCormack
0b6126fcf7 Bug 1180120 - Part 3: Record on ElementRestyler whether we are at the root of a restyle. r=dbaron 2015-08-29 06:13:47 +10:00
Brian Birtles
d49be12043 Bug 1180125 part 2 - Move AnimationCommon classes out of CSS namespace; r=dbaron
The long-term plan is to drop the mozilla::css namespace altogether. Before we
go to much further with refactoring code in AnimationCommon, we should drop
usage of the mozilla::css namespace. Specifically, this patch moves the
CommonAnimationManager and AnimValuesStyleRule classes to the mozilla namespace.
2015-07-29 10:57:39 +09:00
Cameron McCormack
dd565e8c69 Bug 1190254 - Use same conditions to call ReparentStyleContext in RestyleUndisplayedNodes as in RestyleSelf. r=mats 2015-08-06 09:16:00 +10:00
Cameron McCormack
9be8c24caf Bug 1180118 - Part 11: Use ReparentStyleContext even if eRestyle_SomeDescendants is used. r=bzbarsky 2015-08-05 22:42:21 +10:00