| Index: third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.h
|
| diff --git a/third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.h b/third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.h
|
| index 0a0d294e5e37197e2ab7a1733e6225c5a484b156..ef9d80c5d4bd48cc2f84b20fadb267d74d49ad8b 100644
|
| --- a/third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.h
|
| +++ b/third_party/WebKit/Source/core/animation/LegacyStyleInterpolation.h
|
| @@ -16,39 +16,7 @@ namespace blink {
|
|
|
| class StyleResolverState;
|
|
|
| -class CORE_EXPORT StyleInterpolation : public Interpolation {
|
| - public:
|
| - // 1) convert m_cachedValue into an X
|
| - // 2) shove X into StyleResolverState
|
| - // X can be:
|
| - // (1) a CSSValue (and applied via StyleBuilder::applyProperty)
|
| - // (2) an AnimatableValue (and applied via
|
| - // AnimatedStyleBuilder::applyProperty)
|
| - // (3) a custom value that is inserted directly into the StyleResolverState.
|
| - virtual void apply(StyleResolverState&) const = 0;
|
| -
|
| - bool isStyleInterpolation() const final { return true; }
|
| -
|
| - CSSPropertyID id() const { return m_id; }
|
| -
|
| - PropertyHandle getProperty() const final { return PropertyHandle(id()); }
|
| -
|
| - protected:
|
| - CSSPropertyID m_id;
|
| -
|
| - StyleInterpolation(std::unique_ptr<InterpolableValue> start,
|
| - std::unique_ptr<InterpolableValue> end,
|
| - CSSPropertyID id)
|
| - : Interpolation(std::move(start), std::move(end)), m_id(id) {}
|
| -};
|
| -
|
| -DEFINE_TYPE_CASTS(StyleInterpolation,
|
| - Interpolation,
|
| - value,
|
| - value->isStyleInterpolation(),
|
| - value.isStyleInterpolation());
|
| -
|
| -class LegacyStyleInterpolation : public StyleInterpolation {
|
| +class CORE_EXPORT LegacyStyleInterpolation : public Interpolation {
|
| public:
|
| static PassRefPtr<LegacyStyleInterpolation> create(
|
| PassRefPtr<AnimatableValue> start,
|
| @@ -59,20 +27,34 @@ class LegacyStyleInterpolation : public StyleInterpolation {
|
| InterpolableAnimatableValue::create(std::move(end)), id));
|
| }
|
|
|
| - void apply(StyleResolverState& state) const override {
|
| + // 1) convert m_cachedValue into an X
|
| + // 2) shove X into StyleResolverState
|
| + // X can be:
|
| + // (1) a CSSValue (and applied via StyleBuilder::applyProperty)
|
| + // (2) an AnimatableValue (and applied via
|
| + // AnimatedStyleBuilder::applyProperty)
|
| + // (3) a custom value that is inserted directly into the StyleResolverState.
|
| + void apply(StyleResolverState& state) const {
|
| AnimatedStyleBuilder::applyProperty(m_id, state, currentValue().get());
|
| }
|
|
|
| bool isLegacyStyleInterpolation() const final { return true; }
|
| +
|
| PassRefPtr<AnimatableValue> currentValue() const {
|
| return toInterpolableAnimatableValue(m_cachedValue.get())->value();
|
| }
|
|
|
| + CSSPropertyID id() const { return m_id; }
|
| +
|
| + PropertyHandle getProperty() const final { return PropertyHandle(id()); }
|
| +
|
| private:
|
| + CSSPropertyID m_id;
|
| +
|
| LegacyStyleInterpolation(std::unique_ptr<InterpolableValue> start,
|
| std::unique_ptr<InterpolableValue> end,
|
| CSSPropertyID id)
|
| - : StyleInterpolation(std::move(start), std::move(end), id) {}
|
| + : Interpolation(std::move(start), std::move(end)), m_id(id) {}
|
| };
|
|
|
| DEFINE_TYPE_CASTS(LegacyStyleInterpolation,
|
|
|