Index: android_webview/browser/in_process_renderer/in_process_renderer_client.cc |
diff --git a/android_webview/browser/in_process_renderer/in_process_renderer_client.cc b/android_webview/browser/in_process_renderer/in_process_renderer_client.cc |
index 631a58c9726fde2a0fa57dd604dcbad63f8472f1..ff7dd4ee08b9ec7ab890e31c46e46ee503f76f3e 100644 |
--- a/android_webview/browser/in_process_renderer/in_process_renderer_client.cc |
+++ b/android_webview/browser/in_process_renderer/in_process_renderer_client.cc |
@@ -29,6 +29,13 @@ int GetInProcessRendererId() { |
} |
+InProcessRendererClient::InProcessRendererClient() |
+ : input_event_handler_(NULL) { |
+} |
+ |
+InProcessRendererClient::~InProcessRendererClient() { |
+} |
+ |
MessageLoop* InProcessRendererClient::OverrideCompositorMessageLoop() const { |
MessageLoop* rv = content::BrowserThread::UnsafeGetMessageLoopForThread( |
content::BrowserThread::UI); |
@@ -41,15 +48,16 @@ void InProcessRendererClient::DidCreateSynchronousCompositor( |
content::SynchronousCompositor* compositor) { |
InProcessViewRenderer* view_renderer = |
InProcessViewRenderer::FromId(GetInProcessRendererId(), render_view_id); |
- if (view_renderer) |
+ if (view_renderer) { |
view_renderer->BindSynchronousCompositor(compositor); |
+ view_renderer->BindSynchronousInputEventHandler(input_event_handler_); |
+ } |
} |
-bool InProcessRendererClient::ShouldCreateCompositorInputHandler() const { |
- // Compositor input handling will be performed by the renderer host |
- // when UI and compositor threads are merged, so we disable client compositor |
- // input handling in this case. |
- return false; |
+void InProcessRendererClient::DidCreateSynchronousInputEventHandler( |
+ content::SynchronousInputEventHandler* input_event_handler) { |
+ DCHECK(!input_event_handler_ || !input_event_handler); |
+ input_event_handler_ = input_event_handler; |
} |
} // namespace android_webview |