| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/renderer/render_thread_impl.h" | 5 #include "content/renderer/render_thread_impl.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <limits> | 8 #include <limits> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 176 | 176 |
| 177 void RenderThreadImpl::Init() { | 177 void RenderThreadImpl::Init() { |
| 178 TRACE_EVENT_BEGIN_ETW("RenderThreadImpl::Init", 0, ""); | 178 TRACE_EVENT_BEGIN_ETW("RenderThreadImpl::Init", 0, ""); |
| 179 | 179 |
| 180 #if defined(OS_MACOSX) || defined(OS_ANDROID) | 180 #if defined(OS_MACOSX) || defined(OS_ANDROID) |
| 181 // On Mac and Android, the select popups are rendered by the browser. | 181 // On Mac and Android, the select popups are rendered by the browser. |
| 182 WebKit::WebView::setUseExternalPopupMenus(true); | 182 WebKit::WebView::setUseExternalPopupMenus(true); |
| 183 #endif | 183 #endif |
| 184 | 184 |
| 185 lazy_tls.Pointer()->Set(this); | 185 lazy_tls.Pointer()->Set(this); |
| 186 GpuChannelHostFactory::set_instance(this); | |
| 187 | 186 |
| 188 #if defined(OS_WIN) | 187 #if defined(OS_WIN) |
| 189 // If you are running plugins in this thread you need COM active but in | 188 // If you are running plugins in this thread you need COM active but in |
| 190 // the normal case you don't. | 189 // the normal case you don't. |
| 191 if (RenderProcessImpl::InProcessPlugins()) | 190 if (RenderProcessImpl::InProcessPlugins()) |
| 192 initialize_com_.reset(new base::win::ScopedCOMInitializer()); | 191 initialize_com_.reset(new base::win::ScopedCOMInitializer()); |
| 193 #endif | 192 #endif |
| 194 | 193 |
| 195 // Register this object as the main thread. | 194 // Register this object as the main thread. |
| 196 ChildProcess::current()->set_main_thread(this); | 195 ChildProcess::current()->set_main_thread(this); |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 } | 271 } |
| 273 #endif | 272 #endif |
| 274 if (compositor_thread_.get()) { | 273 if (compositor_thread_.get()) { |
| 275 RemoveFilter(compositor_thread_->GetMessageFilter()); | 274 RemoveFilter(compositor_thread_->GetMessageFilter()); |
| 276 compositor_thread_.reset(); | 275 compositor_thread_.reset(); |
| 277 } | 276 } |
| 278 | 277 |
| 279 if (webkit_platform_support_.get()) | 278 if (webkit_platform_support_.get()) |
| 280 WebKit::shutdown(); | 279 WebKit::shutdown(); |
| 281 | 280 |
| 282 GpuChannelHostFactory::set_instance(NULL); | |
| 283 lazy_tls.Pointer()->Set(NULL); | 281 lazy_tls.Pointer()->Set(NULL); |
| 284 | 282 |
| 285 // TODO(port) | 283 // TODO(port) |
| 286 #if defined(OS_WIN) | 284 #if defined(OS_WIN) |
| 287 // Clean up plugin channels before this thread goes away. | 285 // Clean up plugin channels before this thread goes away. |
| 288 NPChannelBase::CleanupChannels(); | 286 NPChannelBase::CleanupChannels(); |
| 289 #endif | 287 #endif |
| 290 } | 288 } |
| 291 | 289 |
| 292 bool RenderThreadImpl::Send(IPC::Message* msg) { | 290 bool RenderThreadImpl::Send(IPC::Message* msg) { |
| (...skipping 666 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 959 | 957 |
| 960 scoped_refptr<base::MessageLoopProxy> | 958 scoped_refptr<base::MessageLoopProxy> |
| 961 RenderThreadImpl::GetFileThreadMessageLoopProxy() { | 959 RenderThreadImpl::GetFileThreadMessageLoopProxy() { |
| 962 DCHECK(message_loop() == MessageLoop::current()); | 960 DCHECK(message_loop() == MessageLoop::current()); |
| 963 if (!file_thread_.get()) { | 961 if (!file_thread_.get()) { |
| 964 file_thread_.reset(new base::Thread("Renderer::FILE")); | 962 file_thread_.reset(new base::Thread("Renderer::FILE")); |
| 965 file_thread_->Start(); | 963 file_thread_->Start(); |
| 966 } | 964 } |
| 967 return file_thread_->message_loop_proxy(); | 965 return file_thread_->message_loop_proxy(); |
| 968 } | 966 } |
| OLD | NEW |