| Index: third_party/WebKit/Source/core/animation/CompositorAnimations.cpp
|
| diff --git a/third_party/WebKit/Source/core/animation/CompositorAnimations.cpp b/third_party/WebKit/Source/core/animation/CompositorAnimations.cpp
|
| index 31e504c25259d8ab80bfa625411bdef0c88e9acf..a4bd613b782f56c9f019621cc9494ea10ec729f4 100644
|
| --- a/third_party/WebKit/Source/core/animation/CompositorAnimations.cpp
|
| +++ b/third_party/WebKit/Source/core/animation/CompositorAnimations.cpp
|
| @@ -53,9 +53,10 @@
|
| #include "platform/geometry/FloatBox.h"
|
| #include "public/platform/Platform.h"
|
| #include "public/platform/WebCompositorSupport.h"
|
| -
|
| +#include "wtf/PtrUtil.h"
|
| #include <algorithm>
|
| #include <cmath>
|
| +#include <memory>
|
|
|
| namespace blink {
|
|
|
| @@ -332,14 +333,14 @@ void CompositorAnimations::startAnimationOnCompositor(const Element& element, in
|
|
|
| const KeyframeEffectModelBase& keyframeEffect = toKeyframeEffectModelBase(effect);
|
|
|
| - Vector<OwnPtr<CompositorAnimation>> animations;
|
| + Vector<std::unique_ptr<CompositorAnimation>> animations;
|
| getAnimationOnCompositor(timing, group, startTime, timeOffset, keyframeEffect, animations, animationPlaybackRate);
|
| ASSERT(!animations.isEmpty());
|
| for (auto& compositorAnimation : animations) {
|
| int id = compositorAnimation->id();
|
| CompositorAnimationPlayer* compositorPlayer = animation.compositorPlayer();
|
| ASSERT(compositorPlayer);
|
| - compositorPlayer->addAnimation(compositorAnimation.leakPtr());
|
| + compositorPlayer->addAnimation(compositorAnimation.release());
|
| startedAnimationIds.append(id);
|
| }
|
| ASSERT(!startedAnimationIds.isEmpty());
|
| @@ -510,7 +511,7 @@ void setTimingFunctionOnCurve(PlatformAnimationCurveType& curve, TimingFunction*
|
| void addKeyframeToCurve(CompositorFilterAnimationCurve& curve, Keyframe::PropertySpecificKeyframe* keyframe,
|
| const AnimatableValue* value, const TimingFunction* keyframeTimingFunction)
|
| {
|
| - OwnPtr<CompositorFilterOperations> ops = CompositorFilterOperations::create();
|
| + std::unique_ptr<CompositorFilterOperations> ops = CompositorFilterOperations::create();
|
| toCompositorFilterOperations(toAnimatableFilterOperations(value)->operations(), ops.get());
|
|
|
| CompositorFilterKeyframe filterKeyframe(keyframe->offset(), std::move(ops));
|
| @@ -527,7 +528,7 @@ void addKeyframeToCurve(CompositorFloatAnimationCurve& curve, Keyframe::Property
|
| void addKeyframeToCurve(CompositorTransformAnimationCurve& curve, Keyframe::PropertySpecificKeyframe* keyframe,
|
| const AnimatableValue* value, const TimingFunction* keyframeTimingFunction)
|
| {
|
| - OwnPtr<CompositorTransformOperations> ops = CompositorTransformOperations::create();
|
| + std::unique_ptr<CompositorTransformOperations> ops = CompositorTransformOperations::create();
|
| toCompositorTransformOperations(toAnimatableTransform(value)->transformOperations(), ops.get());
|
|
|
| CompositorTransformKeyframe transformKeyframe(keyframe->offset(), std::move(ops));
|
| @@ -555,7 +556,7 @@ void addKeyframesToCurve(PlatformAnimationCurveType& curve, const AnimatableValu
|
|
|
| } // namespace
|
|
|
| -void CompositorAnimations::getAnimationOnCompositor(const Timing& timing, int group, double startTime, double timeOffset, const KeyframeEffectModelBase& effect, Vector<OwnPtr<CompositorAnimation>>& animations, double animationPlaybackRate)
|
| +void CompositorAnimations::getAnimationOnCompositor(const Timing& timing, int group, double startTime, double timeOffset, const KeyframeEffectModelBase& effect, Vector<std::unique_ptr<CompositorAnimation>>& animations, double animationPlaybackRate)
|
| {
|
| ASSERT(animations.isEmpty());
|
| CompositorTiming compositorTiming;
|
| @@ -576,11 +577,11 @@ void CompositorAnimations::getAnimationOnCompositor(const Timing& timing, int gr
|
| getKeyframeValuesForProperty(&effect, property, scale, values);
|
|
|
| CompositorTargetProperty::Type targetProperty;
|
| - OwnPtr<CompositorAnimationCurve> curve;
|
| + std::unique_ptr<CompositorAnimationCurve> curve;
|
| switch (property.cssProperty()) {
|
| case CSSPropertyOpacity: {
|
| targetProperty = CompositorTargetProperty::OPACITY;
|
| - OwnPtr<CompositorFloatAnimationCurve> floatCurve = CompositorFloatAnimationCurve::create();
|
| + std::unique_ptr<CompositorFloatAnimationCurve> floatCurve = CompositorFloatAnimationCurve::create();
|
| addKeyframesToCurve(*floatCurve, values);
|
| setTimingFunctionOnCurve(*floatCurve, timing.timingFunction.get());
|
| curve = std::move(floatCurve);
|
| @@ -589,7 +590,7 @@ void CompositorAnimations::getAnimationOnCompositor(const Timing& timing, int gr
|
| case CSSPropertyWebkitFilter:
|
| case CSSPropertyBackdropFilter: {
|
| targetProperty = CompositorTargetProperty::FILTER;
|
| - OwnPtr<CompositorFilterAnimationCurve> filterCurve = CompositorFilterAnimationCurve::create();
|
| + std::unique_ptr<CompositorFilterAnimationCurve> filterCurve = CompositorFilterAnimationCurve::create();
|
| addKeyframesToCurve(*filterCurve, values);
|
| setTimingFunctionOnCurve(*filterCurve, timing.timingFunction.get());
|
| curve = std::move(filterCurve);
|
| @@ -600,7 +601,7 @@ void CompositorAnimations::getAnimationOnCompositor(const Timing& timing, int gr
|
| case CSSPropertyTranslate:
|
| case CSSPropertyTransform: {
|
| targetProperty = CompositorTargetProperty::TRANSFORM;
|
| - OwnPtr<CompositorTransformAnimationCurve> transformCurve = CompositorTransformAnimationCurve::create();
|
| + std::unique_ptr<CompositorTransformAnimationCurve> transformCurve = CompositorTransformAnimationCurve::create();
|
| addKeyframesToCurve(*transformCurve, values);
|
| setTimingFunctionOnCurve(*transformCurve, timing.timingFunction.get());
|
| curve = std::move(transformCurve);
|
| @@ -612,7 +613,7 @@ void CompositorAnimations::getAnimationOnCompositor(const Timing& timing, int gr
|
| }
|
| ASSERT(curve.get());
|
|
|
| - OwnPtr<CompositorAnimation> animation = CompositorAnimation::create(*curve, targetProperty, group, 0);
|
| + std::unique_ptr<CompositorAnimation> animation = CompositorAnimation::create(*curve, targetProperty, group, 0);
|
|
|
| if (!std::isnan(startTime))
|
| animation->setStartTime(startTime);
|
|
|