Index: cc/trees/thread_proxy.cc |
diff --git a/cc/trees/thread_proxy.cc b/cc/trees/thread_proxy.cc |
index a09850a5ece8968e1f7868140f1c74fe0202676a..5879fc6911103bb5381babe2892473348ec23e2f 100644 |
--- a/cc/trees/thread_proxy.cc |
+++ b/cc/trees/thread_proxy.cc |
@@ -348,6 +348,7 @@ void ThreadProxy::OnCanDrawStateChanged(bool can_draw) { |
TRACE_EVENT1( |
"cc", "ThreadProxy::OnCanDrawStateChanged", "can_draw", can_draw); |
scheduler_on_impl_thread_->SetCanDraw(can_draw); |
+ layer_tree_host_impl_->UpdateBackgroundAnimateTicking(); |
} |
void ThreadProxy::OnHasPendingTreeStateChanged(bool has_pending_tree) { |
@@ -811,6 +812,8 @@ void ThreadProxy::ScheduledActionCommit() { |
layer_tree_host_->FinishCommitOnImplThread(layer_tree_host_impl_.get()); |
layer_tree_host_impl_->CommitComplete(); |
+ layer_tree_host_impl_->UpdateBackgroundAnimateTicking(); |
+ |
next_frame_is_newly_committed_frame_on_impl_thread_ = true; |
if (layer_tree_host_->settings().impl_side_painting && |
@@ -876,6 +879,7 @@ ThreadProxy::ScheduledActionDrawAndSwapInternal(bool forced_draw) { |
layer_tree_host_impl_->ActivatePendingTreeIfNeeded(); |
layer_tree_host_impl_->Animate(monotonic_time, wall_clock_time); |
+ layer_tree_host_impl_->UpdateBackgroundAnimateTicking(); |
// This method is called on a forced draw, regardless of whether we are able |
// to produce a frame, as the calling site on main thread is blocked until its |
@@ -900,6 +904,8 @@ ThreadProxy::ScheduledActionDrawAndSwapInternal(bool forced_draw) { |
} |
layer_tree_host_impl_->DidDrawAllLayers(frame); |
+ layer_tree_host_impl_->UpdateAnimationState(); |
ajuma
2013/04/04 15:28:47
If the call to PrepareToDraw (above) returned fals
danakj
2013/04/04 18:28:25
Ok, I've done this and added LayerTreeHostAnimatio
|
+ |
// Check for tree activation. |
if (completion_event_for_commit_held_on_tree_activation_ && |
!layer_tree_host_impl_->pending_tree()) { |