gecko-dev/dom/animation
Boris Chiou b5a2513e31 Bug 1534884 - Add new animation warning for animations overridden by important rules. r=birtles
We move the check of important rule and animation level into
KeyframeEffect::ShouldBlockAsyncTransformAnimations(), and add a new warning
for it.

Note:
1. ShouldBlockAsyncTransformAnimations() only cares about transforms. And
   for other compositor animation properties, we count on
   HasEffectiveAnimationOfPropertySet() (in IsMatchForCompositor()).
2. If we check the important rules in both
   EffectCompositor::HasAnimationsForCompositor() and
   ActiveLayerTracker::IsTransformMaybeAnimated(), we may get the incorrect
   animation warnings (i.e. TransformFrameInactive). In most cases, we
   check these two functions together, so perhaps move the check of important
   rules outside HasEffectiveAnimationOfPropertySet() is fine.
   Besides, ActiveLayerTracker just tracks if there is a style change on this
   property (or display item) on the active layers, so should be OK to not
   check important rules in it.

So IsMatchForCompositor() should check all transform-like properties,
instead of each one, to get the correct result. (That's why we have to
refactor KeyframeEffect::GetPropertiesForCompositor() as well.)

Differential Revision: https://phabricator.services.mozilla.com/D34432

--HG--
extra : moz-landing-system : lando
2019-06-28 18:18:08 +00:00
..
test Bug 1534884 - Add new animation warning for animations overridden by important rules. r=birtles 2019-06-28 18:18:08 +00:00
Animation.cpp Bug 1534884 - Add new animation warning for animations overridden by important rules. r=birtles 2019-06-28 18:18:08 +00:00
Animation.h Bug 1253476 - Implement Animation.commitStyles; r=boris,emilio,bzbarsky,smaug 2019-05-20 06:04:23 +00:00
AnimationComparator.h
AnimationEffect.cpp
AnimationEffect.h
AnimationEventDispatcher.cpp
AnimationEventDispatcher.h
AnimationPerformanceWarning.cpp Bug 1534884 - Add new animation warning for animations overridden by important rules. r=birtles 2019-06-28 18:18:08 +00:00
AnimationPerformanceWarning.h Bug 1534884 - Add new animation warning for animations overridden by important rules. r=birtles 2019-06-28 18:18:08 +00:00
AnimationPropertySegment.h
AnimationTarget.h Bug 1253476 - Add DefaultHasher implementation for OwningAnimationTarget; r=njn 2019-05-20 05:22:07 +00:00
AnimationTimeline.cpp
AnimationTimeline.h
AnimationUtils.cpp Bug 1518816 - Rework AnimationUtils::EffectSetContainsAnimatedScale to handle looking up the effect set correctly; r=hiro 2019-03-18 04:12:10 +00:00
AnimationUtils.h Bug 1540015 - part 1: Make Document.h stop including nsIPresShell.h r=smaug 2019-03-29 15:11:04 +00:00
CSSPseudoElement.cpp Bug 1553021 - Update naming of parameter to getAnimations to match spec; r=bzbarsky 2019-05-22 05:40:36 +00:00
CSSPseudoElement.h Bug 1553021 - Update naming of parameter to getAnimations to match spec; r=bzbarsky 2019-05-22 05:40:36 +00:00
ComputedTiming.h
ComputedTimingFunction.cpp Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika 2019-02-25 16:05:29 -06:00
ComputedTimingFunction.h
DocumentTimeline.cpp Bug 1253476 - Run microtask checkpoint for updating timing after updating all timelines; r=hiro 2019-05-20 05:22:03 +00:00
DocumentTimeline.h
EffectCompositor.cpp Bug 1534884 - Add new animation warning for animations overridden by important rules. r=birtles 2019-06-28 18:18:08 +00:00
EffectCompositor.h Bug 1253476 - Implement Animation.commitStyles; r=boris,emilio,bzbarsky,smaug 2019-05-20 06:04:23 +00:00
EffectSet.cpp Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-03-31 15:12:55 +00:00
EffectSet.h Bug 1540785 - Part 1: Introduce nsDisplayItemBase r=mattwoodrow 2019-04-22 19:57:59 +00:00
Keyframe.h
KeyframeEffect.cpp Bug 1534884 - Add new animation warning for animations overridden by important rules. r=birtles 2019-06-28 18:18:08 +00:00
KeyframeEffect.h Bug 1534884 - Add new animation warning for animations overridden by important rules. r=birtles 2019-06-28 18:18:08 +00:00
KeyframeEffectParams.h
KeyframeUtils.cpp Bug 1557793 part 3. Change the signatures of various nsContentUtils localization methods to play nicer with the new stringbundle API. r=smaug 2019-06-08 21:26:12 +00:00
KeyframeUtils.h Bug 1525955 - Include anon boxes in CSSPseudoElementType, to remove ComputedStyle::mPseudoTag. r=heycam 2019-02-19 13:44:33 +00:00
PendingAnimationTracker.cpp Bug 1540015 - part 3: Rename Document::GetShell() to Document::GetPresShell() and make it return PresShell* rather than nsIPresShell* r=smaug,emilio 2019-03-29 15:12:47 +00:00
PendingAnimationTracker.h
PostRestyleMode.h Bug 1541767 - Don't post animation restyles when unbinding an element; r=hiro 2019-04-18 06:49:25 +00:00
PseudoElementHashEntry.h Bug 1525955 - Include anon boxes in CSSPseudoElementType, to remove ComputedStyle::mPseudoTag. r=heycam 2019-02-19 13:44:33 +00:00
TimingParams.cpp Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika 2019-02-25 16:05:29 -06:00
TimingParams.h
moz.build Bug 1541767 - Don't post animation restyles when unbinding an element; r=hiro 2019-04-18 06:49:25 +00:00