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

Unified Diff: webkit/renderer/compositor_bindings/web_animation_impl.cc

Issue 227733004: Handle direction control in compositor Animations (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: new patch: fixes build failure in web_animation_unittest.cc Created 6 years, 8 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: webkit/renderer/compositor_bindings/web_animation_impl.cc
diff --git a/webkit/renderer/compositor_bindings/web_animation_impl.cc b/webkit/renderer/compositor_bindings/web_animation_impl.cc
index c401d5c974128060ca7a6f59530fa726ff1dd463..d910acff65d9c658d022558fae66fb71718132a4 100644
--- a/webkit/renderer/compositor_bindings/web_animation_impl.cc
+++ b/webkit/renderer/compositor_bindings/web_animation_impl.cc
@@ -95,13 +95,48 @@ void WebAnimationImpl::setTimeOffset(double monotonic_time) {
animation_->set_time_offset(monotonic_time);
}
+#if WEB_ANIMATION_SUPPORTS_FULL_DIRECTION
+blink::WebAnimation::Direction WebAnimationImpl::direction() const {
+ switch (animation_->direction()) {
+ case cc::Animation::Normal:
+ return DirectionNormal;
+ case cc::Animation::Reverse:
+ return DirectionReverse;
+ case cc::Animation::Alternate:
+ return DirectionAlternate;
+ case cc::Animation::AlternateReverse:
+ return DirectionAlternateReverse;
+ default:
+ NOTREACHED();
+ }
+ return DirectionNormal;
+}
+
+void WebAnimationImpl::setDirection(Direction direction) {
+ switch (direction) {
+ case DirectionNormal:
+ animation_->set_direction(cc::Animation::Normal);
+ break;
+ case DirectionReverse:
+ animation_->set_direction(cc::Animation::Reverse);
+ break;
+ case DirectionAlternate:
+ animation_->set_direction(cc::Animation::Alternate);
+ break;
+ case DirectionAlternateReverse:
+ animation_->set_direction(cc::Animation::AlternateReverse);
+ break;
+ }
+}
+#else
bool WebAnimationImpl::alternatesDirection() const {
- return animation_->alternates_direction();
+ return animation_->direction() == cc::Animation::Alternate;
}
void WebAnimationImpl::setAlternatesDirection(bool alternates) {
- animation_->set_alternates_direction(alternates);
+ return animation_->set_direction(cc::Animation::Alternate);
}
+#endif
scoped_ptr<cc::Animation> WebAnimationImpl::PassAnimation() {
animation_->set_needs_synchronized_start_time(true);

Powered by Google App Engine
This is Rietveld 408576698