| Index: content/browser/renderer_host/render_widget_host_view_android.cc
|
| diff --git a/content/browser/renderer_host/render_widget_host_view_android.cc b/content/browser/renderer_host/render_widget_host_view_android.cc
|
| index 6ed389874e60ad69ec852668995aa31df13d0745..7bed642cab83da1fd6fb46d3a60aac7b0b755ac9 100644
|
| --- a/content/browser/renderer_host/render_widget_host_view_android.cc
|
| +++ b/content/browser/renderer_host/render_widget_host_view_android.cc
|
| @@ -1052,7 +1052,7 @@ void RenderWidgetHostViewAndroid::RemoveLayers() {
|
| }
|
|
|
| void RenderWidgetHostViewAndroid::SetNeedsAnimate() {
|
| - content_view_core_->GetWindowAndroid()->RequestVSyncUpdate();
|
| + content_view_core_->GetWindowAndroid()->SetNeedsAnimate();
|
| }
|
|
|
| bool RenderWidgetHostViewAndroid::Animate(base::TimeTicks frame_time) {
|
| @@ -1337,12 +1337,15 @@ void RenderWidgetHostViewAndroid::OnVSync(base::TimeTicks frame_time,
|
| host_->GetRoutingID(),
|
| cc::BeginFrameArgs::Create(frame_time, deadline, vsync_period)));
|
|
|
| - // TODO(sievers): This should use the LayerTreeHostClient callback
|
| - bool needs_animate = Animate(frame_time);
|
| - if (needs_begin_frame_ || needs_animate)
|
| + if (needs_begin_frame_)
|
| content_view_core_->GetWindowAndroid()->RequestVSyncUpdate();
|
| }
|
|
|
| +void RenderWidgetHostViewAndroid::OnAnimate(base::TimeTicks frame_begin_time) {
|
| + if (Animate(frame_begin_time))
|
| + SetNeedsAnimate();
|
| +}
|
| +
|
| void RenderWidgetHostViewAndroid::OnLostResources() {
|
| ReleaseLocksOnSurface();
|
| if (layer_.get())
|
|
|