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

Unified Diff: content/renderer/gpu/compositor_thread.cc

Issue 12356002: [NOT FOR COMMIT] Hacks to merge render compositor thread with UI thread (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 10 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/gpu/compositor_thread.cc
diff --git a/content/renderer/gpu/compositor_thread.cc b/content/renderer/gpu/compositor_thread.cc
index cde2e933d8ac22a16ab1c6cfd57d1dec98168c2d..867cadb4dd379f6061f54f996da628afa5137a60 100644
--- a/content/renderer/gpu/compositor_thread.cc
+++ b/content/renderer/gpu/compositor_thread.cc
@@ -6,6 +6,7 @@
#include "base/bind.h"
#include "base/debug/trace_event.h"
+#include "base/message_loop.h"
#include "content/renderer/gpu/input_event_filter.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebActiveWheelFlingParameters.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebCompositorInputHandlerClient.h"
@@ -98,17 +99,17 @@ void SetHighThreadPriority() {
}
#endif
-CompositorThread::CompositorThread(IPC::Listener* main_listener)
- : thread_("Compositor") {
+CompositorThread::CompositorThread(IPC::Listener* main_listener, MessageLoop* message_loop)
+ : message_loop_(message_loop),
+ thread_(message_loop->message_loop_proxy()) {
filter_ =
new InputEventFilter(main_listener,
- thread_.message_loop()->message_loop_proxy(),
+ message_loop->message_loop_proxy(),
base::Bind(&CompositorThread::HandleInputEvent,
base::Unretained(this)));
#if defined(OS_ANDROID)
// TODO(epenner): Move thread priorities to base. (crbug.com/170549)
- thread_.message_loop()->PostTask(FROM_HERE,
- base::Bind(&SetHighThreadPriority));
+ message_loop->PostTask(FROM_HERE, base::Bind(&SetHighThreadPriority));
#endif
}
@@ -122,9 +123,9 @@ IPC::ChannelProxy::MessageFilter* CompositorThread::GetMessageFilter() const {
void CompositorThread::AddInputHandler(
int routing_id, int input_handler_id,
const base::WeakPtr<RenderViewImpl>& render_view_impl) {
- DCHECK_NE(thread_.message_loop(), MessageLoop::current());
+ DCHECK_NE(message_loop_, MessageLoop::current());
- thread_.message_loop()->PostTask(
+ message_loop_->PostTask(
FROM_HERE,
base::Bind(&CompositorThread::AddInputHandlerOnCompositorThread,
base::Unretained(this),
@@ -139,7 +140,7 @@ void CompositorThread::AddInputHandlerOnCompositorThread(
scoped_refptr<base::MessageLoopProxy> main_loop,
const base::WeakPtr<RenderViewImpl>& render_view_impl) {
- DCHECK_EQ(thread_.message_loop(), MessageLoop::current());
+ DCHECK_EQ(message_loop_, MessageLoop::current());
WebCompositorInputHandler* input_handler =
WebCompositorInputHandler::fromIdentifier(input_handler_id);
@@ -162,7 +163,7 @@ void CompositorThread::AddInputHandlerOnCompositorThread(
}
void CompositorThread::RemoveInputHandler(int routing_id) {
- DCHECK_EQ(MessageLoop::current(), thread_.message_loop());
+ DCHECK_EQ(MessageLoop::current(), message_loop_);
TRACE_EVENT0("CompositorThread::RemoveInputHandler", "RemovingRoute");
@@ -173,7 +174,7 @@ void CompositorThread::RemoveInputHandler(int routing_id) {
void CompositorThread::HandleInputEvent(
int routing_id,
const WebInputEvent* input_event) {
- DCHECK_EQ(MessageLoop::current(), thread_.message_loop());
+ DCHECK_EQ(MessageLoop::current(), message_loop_);
InputHandlerMap::iterator it = input_handlers_.find(routing_id);
if (it == input_handlers_.end()) {

Powered by Google App Engine
This is Rietveld 408576698