Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Unified Diff: third_party/WebKit/Source/core/animation/CompositorAnimations.h

Issue 2023143002: Blink Compositor Animation: Erase CompositorAnimationsImpl.h (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@gmock
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/animation/CompositorAnimations.h
diff --git a/third_party/WebKit/Source/core/animation/CompositorAnimations.h b/third_party/WebKit/Source/core/animation/CompositorAnimations.h
index cd98a9056e8373b791934817b65803ef4a8c281a..7aa79b6ea3106e40374edc94371c37f8f4443144 100644
--- a/third_party/WebKit/Source/core/animation/CompositorAnimations.h
+++ b/third_party/WebKit/Source/core/animation/CompositorAnimations.h
@@ -41,35 +41,42 @@
namespace blink {
class Animation;
+class CompositorAnimation;
class Element;
class FloatBox;
+class KeyframeEffectModelBase;
class CORE_EXPORT CompositorAnimations {
- USING_FAST_MALLOC(CompositorAnimations);
- WTF_MAKE_NONCOPYABLE(CompositorAnimations);
+ STATIC_ONLY(CompositorAnimations);
public:
- static CompositorAnimations* instance() { return instance(0); }
- static void setInstanceForTesting(CompositorAnimations* newInstance) { instance(newInstance); }
static bool isCompositableProperty(CSSPropertyID);
static const CSSPropertyID compositableProperties[7];
- virtual bool isCandidateForAnimationOnCompositor(const Timing&, const Element&, const Animation*, const EffectModel&, double animationPlaybackRate);
- virtual void cancelIncompatibleAnimationsOnCompositor(const Element&, const Animation&, const EffectModel&);
- virtual bool canStartAnimationOnCompositor(const Element&);
- virtual void startAnimationOnCompositor(const Element&, int group, double startTime, double timeOffset, const Timing&, const Animation&, const EffectModel&, Vector<int>& startedAnimationIds, double animationPlaybackRate);
- virtual void cancelAnimationOnCompositor(const Element&, const Animation&, int id);
- virtual void pauseAnimationForTestingOnCompositor(const Element&, const Animation&, int id, double pauseTime);
+ static bool isCandidateForAnimationOnCompositor(const Timing&, const Element&, const Animation*, const EffectModel&, double animationPlaybackRate);
+ static void cancelIncompatibleAnimationsOnCompositor(const Element&, const Animation&, const EffectModel&);
+ static bool canStartAnimationOnCompositor(const Element&);
+ static void startAnimationOnCompositor(const Element&, int group, double startTime, double timeOffset, const Timing&, const Animation&, const EffectModel&, Vector<int>& startedAnimationIds, double animationPlaybackRate);
+ static void cancelAnimationOnCompositor(const Element&, const Animation&, int id);
+ static void pauseAnimationForTestingOnCompositor(const Element&, const Animation&, int id, double pauseTime);
- virtual bool canAttachCompositedLayers(const Element&, const Animation&);
- virtual void attachCompositedLayers(const Element&, const Animation&);
+ static bool canAttachCompositedLayers(const Element&, const Animation&);
+ static void attachCompositedLayers(const Element&, const Animation&);
- virtual bool getAnimatedBoundingBox(FloatBox&, const EffectModel&, double minValue, double maxValue) const;
+ static bool getAnimatedBoundingBox(FloatBox&, const EffectModel&, double minValue, double maxValue);
-protected:
- CompositorAnimations();
+ struct CompositorTiming {
+ Timing::PlaybackDirection direction;
+ double scaledDuration;
+ double scaledTimeOffset;
+ double adjustedIterationCount;
+ double playbackRate;
+ Timing::FillMode fillMode;
+ double iterationStart;
+ };
-private:
- static CompositorAnimations* instance(CompositorAnimations* newInstance);
+ static bool convertTimingForCompositor(const Timing&, double timeOffset, CompositorTiming& out, double animationPlaybackRate);
+
+ static void getAnimationOnCompositor(const Timing&, int group, double startTime, double timeOffset, const KeyframeEffectModelBase&, Vector<OwnPtr<CompositorAnimation>>& animations, double animationPlaybackRate);
};
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698