Chromium Code Reviews| 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 dd65887f78db5d47ad01b2adc5b5da168d243a18..65cc2601e8934012d36b8ee7f8636a9ca7d0364a 100644 |
| --- a/content/browser/renderer_host/render_widget_host_view_android.cc |
| +++ b/content/browser/renderer_host/render_widget_host_view_android.cc |
| @@ -1304,6 +1304,12 @@ void RenderWidgetHostViewAndroid::OnSetNeedsFlushInput() { |
| return; |
| TRACE_EVENT0("input", "RenderWidgetHostViewAndroid::OnSetNeedsFlushInput"); |
| flush_input_requested_ = true; |
| + |
| + if (!observing_root_window_) { |
| + content_view_core_->GetWindowAndroid()->AddObserver(this); |
|
no sievers
2014/08/21 18:01:22
Actually I'm not sure if this is a good idea, sinc
boliu
2014/08/21 18:04:56
Jared's patch came from this. And we should submit
no sievers
2014/08/21 18:11:00
What if OnSetNeedsFlushInput() gets called in Chro
boliu
2014/08/21 18:22:52
Hmm...webview should do what chrome does, which me
|
| + observing_root_window_ = true; |
| + } |
| + |
| content_view_core_->GetWindowAndroid()->RequestVSyncUpdate(); |
| } |
| @@ -1529,6 +1535,9 @@ void RenderWidgetHostViewAndroid::OnVSync(base::TimeTicks frame_time, |
| host_->FlushInput(); |
| } |
| + if (using_synchronous_compositor_) |
| + return; |
| + |
| TRACE_EVENT0("cc", "RenderWidgetHostViewAndroid::SendBeginFrame"); |
| base::TimeTicks display_time = frame_time + vsync_period; |