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

Unified Diff: content/renderer/render_thread_impl.cc

Issue 1620053002: sync compositor: Merge input path with chrome (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review Created 4 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/renderer/input/input_handler_manager_client.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_thread_impl.cc
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
index 202c5f9302e72873b0d219235c8595f64b5e789d..b1b76c99d2ecdb935e36941246984248e7909b66 100644
--- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc
@@ -1177,10 +1177,13 @@ void RenderThreadImpl::InitializeCompositorThread() {
#if defined(OS_ANDROID)
SynchronousCompositorFactory* sync_compositor_factory =
SynchronousCompositorFactory::GetInstance();
+ const base::CommandLine* cmd_line = base::CommandLine::ForCurrentProcess();
bool using_ipc_sync_compositing =
- base::CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kIPCSyncCompositing);
+ cmd_line->HasSwitch(switches::kIPCSyncCompositing);
+ bool sync_input_for_sync_compositing =
+ cmd_line->HasSwitch(switches::kSyncInputForSyncCompositor);
DCHECK(!sync_compositor_factory || !using_ipc_sync_compositing);
+ DCHECK(!sync_input_for_sync_compositing || using_ipc_sync_compositing);
if (sync_compositor_factory) {
compositor_task_runner_ =
@@ -1201,16 +1204,23 @@ void RenderThreadImpl::InitializeCompositorThread() {
false));
}
- InputHandlerManagerClient* input_handler_manager_client = NULL;
+ InputHandlerManagerClient* input_handler_manager_client = nullptr;
+ SynchronousInputHandlerProxyClient* synchronous_input_handler_proxy_client =
+ nullptr;
#if defined(OS_ANDROID)
if (using_ipc_sync_compositing) {
sync_compositor_message_filter_ =
new SynchronousCompositorFilter(compositor_task_runner_);
AddFilter(sync_compositor_message_filter_.get());
- input_handler_manager_client = sync_compositor_message_filter_.get();
+ if (sync_input_for_sync_compositing)
+ input_handler_manager_client = sync_compositor_message_filter_.get();
+ synchronous_input_handler_proxy_client =
+ sync_compositor_message_filter_.get();
} else if (sync_compositor_factory) {
input_handler_manager_client =
sync_compositor_factory->GetInputHandlerManagerClient();
+ synchronous_input_handler_proxy_client =
+ sync_compositor_factory->GetSynchronousInputHandlerProxyClient();
}
#endif
if (!input_handler_manager_client) {
@@ -1223,7 +1233,7 @@ void RenderThreadImpl::InitializeCompositorThread() {
}
input_handler_manager_.reset(new InputHandlerManager(
compositor_task_runner_, input_handler_manager_client,
- renderer_scheduler_.get()));
+ synchronous_input_handler_proxy_client, renderer_scheduler_.get()));
}
void RenderThreadImpl::EnsureWebKitInitialized() {
« no previous file with comments | « content/renderer/input/input_handler_manager_client.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698