Index: third_party/WebKit/Source/core/animation/InvalidatableInterpolation.h |
diff --git a/third_party/WebKit/Source/core/animation/InvalidatableInterpolation.h b/third_party/WebKit/Source/core/animation/InvalidatableInterpolation.h |
index c45d3a08977d988465175d0fa2f52d627f1635a8..1763d4648e7db27612ba0319e382fc8aa55a1147 100644 |
--- a/third_party/WebKit/Source/core/animation/InvalidatableInterpolation.h |
+++ b/third_party/WebKit/Source/core/animation/InvalidatableInterpolation.h |
@@ -6,8 +6,8 @@ |
#define InvalidatableInterpolation_h |
#include "core/animation/InterpolationType.h" |
-#include "core/animation/InterpolationTypesMap.h" |
#include "core/animation/PrimitiveInterpolation.h" |
+#include "core/animation/PropertyInterpolationTypesMapping.h" |
#include "core/animation/StyleInterpolation.h" |
#include "core/animation/TypedInterpolationValue.h" |
#include <memory> |
@@ -21,10 +21,12 @@ |
public: |
static PassRefPtr<InvalidatableInterpolation> create( |
PropertyHandle property, |
+ const InterpolationTypes& interpolationTypes, |
PassRefPtr<PropertySpecificKeyframe> startKeyframe, |
PassRefPtr<PropertySpecificKeyframe> endKeyframe) { |
- return adoptRef(new InvalidatableInterpolation( |
- property, std::move(startKeyframe), std::move(endKeyframe))); |
+ return adoptRef(new InvalidatableInterpolation(property, interpolationTypes, |
+ std::move(startKeyframe), |
+ std::move(endKeyframe))); |
} |
PropertyHandle getProperty() const final { return m_property; } |
@@ -38,12 +40,12 @@ |
private: |
InvalidatableInterpolation(PropertyHandle property, |
+ const InterpolationTypes& interpolationTypes, |
PassRefPtr<PropertySpecificKeyframe> startKeyframe, |
PassRefPtr<PropertySpecificKeyframe> endKeyframe) |
: Interpolation(nullptr, nullptr), |
m_property(property), |
- m_interpolationTypes(nullptr), |
- m_interpolationTypesVersion(0), |
+ m_interpolationTypes(interpolationTypes), |
m_startKeyframe(startKeyframe), |
m_endKeyframe(endKeyframe), |
m_currentFraction(std::numeric_limits<double>::quiet_NaN()), |
@@ -56,7 +58,6 @@ |
const TypedInterpolationValue* ensureValidConversion( |
const InterpolationEnvironment&, |
const UnderlyingValueOwner&) const; |
- void ensureValidInterpolationTypes(const InterpolationEnvironment&) const; |
void clearConversionCache() const; |
bool isConversionCacheValid(const InterpolationEnvironment&, |
const UnderlyingValueOwner&) const; |
@@ -74,8 +75,7 @@ |
double underlyingFraction() const; |
const PropertyHandle m_property; |
- mutable const InterpolationTypes* m_interpolationTypes; |
- mutable size_t m_interpolationTypesVersion; |
+ const InterpolationTypes& m_interpolationTypes; |
RefPtr<PropertySpecificKeyframe> m_startKeyframe; |
RefPtr<PropertySpecificKeyframe> m_endKeyframe; |
double m_currentFraction; |