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

Unified Diff: Source/core/animation/InterpolableValue.h

Issue 863863004: Implemented additive animations for length (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Fixed AnimationStackTest Created 5 years, 10 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: Source/core/animation/InterpolableValue.h
diff --git a/Source/core/animation/InterpolableValue.h b/Source/core/animation/InterpolableValue.h
index f702bc6cabf77304ebda4bbda1475bc5d904f9a7..60ec3bdcfed7b44454c7440d9ea5dd47cc02b156 100644
--- a/Source/core/animation/InterpolableValue.h
+++ b/Source/core/animation/InterpolableValue.h
@@ -21,14 +21,16 @@ public:
virtual bool isList() const { return false; }
virtual bool isAnimatableValue() const { return false; }
+ bool typesMatch(const InterpolableValue& other) const;
+
virtual PassOwnPtrWillBeRawPtr<InterpolableValue> clone() const = 0;
virtual void trace(Visitor*) { }
-private:
- virtual void interpolate(const InterpolableValue& to, const double progress, InterpolableValue& result) const = 0;
virtual void add(const InterpolableValue& rhs, InterpolableValue& result) const = 0;
virtual void multiply(double scalar, InterpolableValue& result) const = 0;
+private:
+ virtual void interpolate(const InterpolableValue& to, const double progress, InterpolableValue& result) const = 0;
friend class Interpolation;
@@ -53,10 +55,10 @@ public:
double value() const { return m_value; }
virtual PassOwnPtrWillBeRawPtr<InterpolableValue> clone() const override final { return create(m_value); }
-private:
- virtual void interpolate(const InterpolableValue& to, const double progress, InterpolableValue& result) const override final;
virtual void add(const InterpolableValue& rhs, InterpolableValue& result) const override final;
virtual void multiply(double scalar, InterpolableValue& result) const override final;
+private:
+ virtual void interpolate(const InterpolableValue& to, const double progress, InterpolableValue& result) const override final;
double m_value;
explicit InterpolableNumber(double value)
@@ -77,10 +79,10 @@ public:
bool value() const { return m_value; }
virtual PassOwnPtrWillBeRawPtr<InterpolableValue> clone() const override final { return create(m_value); }
-private:
- virtual void interpolate(const InterpolableValue& to, const double progress, InterpolableValue& result) const override final;
virtual void add(const InterpolableValue& rhs, InterpolableValue& result) const override final;
virtual void multiply(double scalar, InterpolableValue& result) const override final { ASSERT_NOT_REACHED(); }
+private:
+ virtual void interpolate(const InterpolableValue& to, const double progress, InterpolableValue& result) const override final;
bool m_value;
explicit InterpolableBool(bool value)
@@ -118,10 +120,10 @@ public:
virtual void trace(Visitor*) override;
-private:
- virtual void interpolate(const InterpolableValue& to, const double progress, InterpolableValue& result) const override final;
virtual void add(const InterpolableValue& rhs, InterpolableValue& result) const override final;
virtual void multiply(double scalar, InterpolableValue& result) const override final;
+private:
+ virtual void interpolate(const InterpolableValue& to, const double progress, InterpolableValue& result) const override final;
explicit InterpolableList(size_t size)
: m_size(size)
, m_values(m_size)
@@ -154,10 +156,10 @@ public:
virtual void trace(Visitor*) override;
-private:
- virtual void interpolate(const InterpolableValue &to, const double progress, InterpolableValue& result) const override final;
virtual void add(const InterpolableValue& rhs, InterpolableValue& result) const override final { ASSERT_NOT_REACHED(); }
virtual void multiply(double scalar, InterpolableValue& result) const override final { ASSERT_NOT_REACHED(); }
+private:
+ virtual void interpolate(const InterpolableValue &to, const double progress, InterpolableValue& result) const override final;
RefPtrWillBeMember<AnimatableValue> m_value;
InterpolableAnimatableValue(PassRefPtrWillBeRawPtr<AnimatableValue> value)

Powered by Google App Engine
This is Rietveld 408576698