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

Side by Side Diff: cc/animation/animation_player.cc

Issue 1009233002: CC Animations: Port Impl-only-scrolling to use compositor animation timelines. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@ui
Patch Set: Fix code review issues. Created 5 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/animation/animation_player.h" 5 #include "cc/animation/animation_player.h"
6 6
7 #include "cc/animation/animation_delegate.h" 7 #include "cc/animation/animation_delegate.h"
8 #include "cc/animation/animation_host.h" 8 #include "cc/animation/animation_host.h"
9 #include "cc/animation/animation_timeline.h" 9 #include "cc/animation/animation_timeline.h"
10 #include "cc/animation/element_animations.h" 10 #include "cc/animation/element_animations.h"
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
112 SetNeedsCommit(); 112 SetNeedsCommit();
113 animations_.clear(); 113 animations_.clear();
114 } 114 }
115 115
116 void AnimationPlayer::UnbindElementAnimations() { 116 void AnimationPlayer::UnbindElementAnimations() {
117 element_animations_ = nullptr; 117 element_animations_ = nullptr;
118 DCHECK(animations_.empty()); 118 DCHECK(animations_.empty());
119 } 119 }
120 120
121 void AnimationPlayer::AddAnimation(scoped_ptr<Animation> animation) { 121 void AnimationPlayer::AddAnimation(scoped_ptr<Animation> animation) {
122 DCHECK(animation->target_property() != Animation::SCROLL_OFFSET ||
123 (animation_host_ && animation_host_->SupportsScrollAnimations()));
124
122 if (element_animations_) { 125 if (element_animations_) {
123 element_animations_->layer_animation_controller()->AddAnimation( 126 element_animations_->layer_animation_controller()->AddAnimation(
124 animation.Pass()); 127 animation.Pass());
125 SetNeedsCommit(); 128 SetNeedsCommit();
126 } else { 129 } else {
127 animations_.push_back(animation.Pass()); 130 animations_.push_back(animation.Pass());
128 } 131 }
129 } 132 }
130 133
131 void AnimationPlayer::PauseAnimation(int animation_id, double time_offset) { 134 void AnimationPlayer::PauseAnimation(int animation_id, double time_offset) {
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 layer_animation_delegate_->NotifyAnimationFinished(monotonic_time, 179 layer_animation_delegate_->NotifyAnimationFinished(monotonic_time,
177 target_property, group); 180 target_property, group);
178 } 181 }
179 182
180 void AnimationPlayer::SetNeedsCommit() { 183 void AnimationPlayer::SetNeedsCommit() {
181 DCHECK(animation_host_); 184 DCHECK(animation_host_);
182 animation_host_->SetNeedsCommit(); 185 animation_host_->SetNeedsCommit();
183 } 186 }
184 187
185 } // namespace cc 188 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698