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

Unified Diff: content/renderer/render_thread_impl.cc

Issue 15851006: Move synchronous compositor into content/browser (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: mkosiba comments1 Created 7 years, 7 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
Index: content/renderer/render_thread_impl.cc
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
index c8328459c965aea7205a420d5a4b4532de601fb7..db69cbf47bc2ae5dfa703956a28d157a32048b0b 100644
--- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc
@@ -118,6 +118,10 @@
#include "third_party/webrtc/system_wrappers/interface/event_tracer.h"
#endif
+#if defined(OS_ANDROID)
+#include "content/renderer/android/synchronous_compositor_factory.h"
+#endif
+
using base::ThreadRestrictions;
using WebKit::WebDocument;
using WebKit::WebFrame;
@@ -745,11 +749,13 @@ void RenderThreadImpl::EnsureWebKitInitialized() {
bool enable = command_line.HasSwitch(switches::kEnableThreadedCompositing);
if (enable) {
- base::MessageLoop* override_loop =
- GetContentClient()->renderer()->OverrideCompositorMessageLoop();
- if (override_loop) {
- compositor_message_loop_proxy_ = override_loop->message_loop_proxy();
- } else {
+#if defined(OS_ANDROID)
+ if (SynchronousCompositorFactory::HasInstance())
+ compositor_message_loop_proxy_ =
+ SynchronousCompositorFactory::GetInstance()->
+ GetCompositorMessageLoop();
+#endif
+ if (!compositor_message_loop_proxy_) {
compositor_thread_.reset(new base::Thread("Compositor"));
compositor_thread_->Start();
#if defined(OS_ANDROID)
@@ -763,11 +769,9 @@ void RenderThreadImpl::EnsureWebKitInitialized() {
false));
}
- if (GetContentClient()->renderer()->ShouldCreateCompositorInputHandler()) {
- input_handler_manager_.reset(
- new InputHandlerManager(this, compositor_message_loop_proxy_));
- AddFilter(input_handler_manager_->GetMessageFilter());
- }
+ input_handler_manager_.reset(
+ new InputHandlerManager(this, compositor_message_loop_proxy_));
+ AddFilter(input_handler_manager_->GetMessageFilter());
}
scoped_refptr<base::MessageLoopProxy> output_surface_loop;

Powered by Google App Engine
This is Rietveld 408576698