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

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

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.cpp
diff --git a/third_party/WebKit/Source/core/animation/CompositorAnimations.cpp b/third_party/WebKit/Source/core/animation/CompositorAnimations.cpp
index 4dcad3f8bde3196c35752fc13989f4839b47c59f..09fb12473c475cf30248bb469add073690b8fb97 100644
--- a/third_party/WebKit/Source/core/animation/CompositorAnimations.cpp
+++ b/third_party/WebKit/Source/core/animation/CompositorAnimations.cpp
@@ -31,8 +31,8 @@
#include "core/animation/CompositorAnimations.h"
#include "core/animation/AnimationEffect.h"
-#include "core/animation/CompositorAnimationsImpl.h"
#include "core/animation/ElementAnimations.h"
+#include "core/animation/KeyframeEffectModel.h"
#include "core/animation/animatable/AnimatableDouble.h"
#include "core/animation/animatable/AnimatableFilterOperations.h"
#include "core/animation/animatable/AnimatableTransform.h"
@@ -41,7 +41,6 @@
#include "core/layout/LayoutObject.h"
#include "core/layout/compositing/CompositedLayerMapping.h"
#include "core/paint/PaintLayer.h"
-#include "platform/RuntimeEnabledFeatures.h"
#include "platform/animation/AnimationTranslationUtil.h"
#include "platform/animation/CompositorAnimation.h"
#include "platform/animation/CompositorAnimationPlayer.h"
@@ -141,19 +140,6 @@ bool hasIncompatibleAnimations(const Element& targetElement, const Animation& an
} // namespace
-CompositorAnimations::CompositorAnimations()
-{
-}
-
-CompositorAnimations* CompositorAnimations::instance(CompositorAnimations* newInstance)
-{
- static CompositorAnimations* instance = new CompositorAnimations();
- if (newInstance) {
- instance = newInstance;
- }
- return instance;
-}
-
bool CompositorAnimations::isCompositableProperty(CSSPropertyID property)
{
for (CSSPropertyID id : compositableProperties) {
@@ -173,7 +159,7 @@ const CSSPropertyID CompositorAnimations::compositableProperties[7] = {
CSSPropertyBackdropFilter
};
-bool CompositorAnimations::getAnimatedBoundingBox(FloatBox& box, const EffectModel& effect, double minValue, double maxValue) const
+bool CompositorAnimations::getAnimatedBoundingBox(FloatBox& box, const EffectModel& effect, double minValue, double maxValue)
{
const KeyframeEffectModelBase& keyframeEffect = toKeyframeEffectModelBase(effect);
@@ -299,8 +285,8 @@ bool CompositorAnimations::isCandidateForAnimationOnCompositor(const Timing& tim
if (animationToAdd && hasIncompatibleAnimations(targetElement, *animationToAdd, effect))
return false;
- CompositorAnimationsImpl::CompositorTiming out;
- if (!CompositorAnimationsImpl::convertTimingForCompositor(timing, 0, out, animationPlaybackRate))
+ CompositorTiming out;
+ if (!convertTimingForCompositor(timing, 0, out, animationPlaybackRate))
return false;
return true;
@@ -348,7 +334,7 @@ void CompositorAnimations::startAnimationOnCompositor(const Element& element, in
const KeyframeEffectModelBase& keyframeEffect = toKeyframeEffectModelBase(effect);
Vector<OwnPtr<CompositorAnimation>> animations;
- CompositorAnimationsImpl::getAnimationOnCompositor(timing, group, startTime, timeOffset, keyframeEffect, animations, animationPlaybackRate);
+ getAnimationOnCompositor(timing, group, startTime, timeOffset, keyframeEffect, animations, animationPlaybackRate);
ASSERT(!animations.isEmpty());
for (auto& compositorAnimation : animations) {
int id = compositorAnimation->id();
@@ -425,11 +411,7 @@ void CompositorAnimations::attachCompositedLayers(const Element& element, const
compositorPlayer->attachLayer(layer->compositedLayerMapping()->mainGraphicsLayer()->platformLayer());
}
-// -----------------------------------------------------------------------
-// CompositorAnimationsImpl
-// -----------------------------------------------------------------------
-
-bool CompositorAnimationsImpl::convertTimingForCompositor(const Timing& timing, double timeOffset, CompositorTiming& out, double animationPlaybackRate)
+bool CompositorAnimations::convertTimingForCompositor(const Timing& timing, double timeOffset, CompositorTiming& out, double animationPlaybackRate)
{
timing.assertValid();
@@ -440,12 +422,7 @@ bool CompositorAnimationsImpl::convertTimingForCompositor(const Timing& timing,
if (std::isnan(timing.iterationDuration) || !timing.iterationCount || !timing.iterationDuration)
return false;
- if (!std::isfinite(timing.iterationCount)) {
- out.adjustedIterationCount = -1;
- } else {
- out.adjustedIterationCount = timing.iterationCount;
- }
-
+ out.adjustedIterationCount = std::isfinite(timing.iterationCount) ? timing.iterationCount : -1;
out.scaledDuration = timing.iterationDuration;
out.direction = timing.direction;
// Compositor's time offset is positive for seeking into the animation.
@@ -453,7 +430,13 @@ bool CompositorAnimationsImpl::convertTimingForCompositor(const Timing& timing,
out.playbackRate = timing.playbackRate * animationPlaybackRate;
out.fillMode = timing.fillMode == Timing::FillModeAuto ? Timing::FillModeNone : timing.fillMode;
out.iterationStart = timing.iterationStart;
- out.assertValid();
+
+ DCHECK_GT(out.scaledDuration, 0);
+ DCHECK(std::isfinite(out.scaledTimeOffset));
+ DCHECK(out.adjustedIterationCount > 0 || out.adjustedIterationCount == -1);
+ DCHECK(std::isfinite(out.playbackRate) && out.playbackRate);
+ DCHECK_GE(out.iterationStart, 0);
+
return true;
}
@@ -573,7 +556,7 @@ void addKeyframesToCurve(PlatformAnimationCurveType& curve, const AnimatableValu
} // namespace
-void CompositorAnimationsImpl::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<OwnPtr<CompositorAnimation>>& animations, double animationPlaybackRate)
{
ASSERT(animations.isEmpty());
CompositorTiming compositorTiming;

Powered by Google App Engine
This is Rietveld 408576698