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

Side by Side Diff: content/renderer/render_thread_impl.cc

Issue 9609008: Implemented Browser Plugin (NOT FOR REVIEW) (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Updated according to creis@'s comments Created 8 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « content/renderer/render_thread_impl.h ('k') | content/renderer/render_view_impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 28 matching lines...) Expand all
39 #include "content/common/resource_messages.h" 39 #include "content/common/resource_messages.h"
40 #include "content/common/view_messages.h" 40 #include "content/common/view_messages.h"
41 #include "content/common/web_database_observer_impl.h" 41 #include "content/common/web_database_observer_impl.h"
42 #include "content/public/common/content_paths.h" 42 #include "content/public/common/content_paths.h"
43 #include "content/public/common/content_switches.h" 43 #include "content/public/common/content_switches.h"
44 #include "content/public/common/renderer_preferences.h" 44 #include "content/public/common/renderer_preferences.h"
45 #include "content/public/common/url_constants.h" 45 #include "content/public/common/url_constants.h"
46 #include "content/public/renderer/content_renderer_client.h" 46 #include "content/public/renderer/content_renderer_client.h"
47 #include "content/public/renderer/render_process_observer.h" 47 #include "content/public/renderer/render_process_observer.h"
48 #include "content/public/renderer/render_view_visitor.h" 48 #include "content/public/renderer/render_view_visitor.h"
49 #include "content/renderer/browser_plugin/browser_plugin_channel_manager.h"
50 #include "content/renderer/browser_plugin/browser_plugin_registry.h"
49 #include "content/renderer/devtools_agent_filter.h" 51 #include "content/renderer/devtools_agent_filter.h"
50 #include "content/renderer/dom_storage/dom_storage_dispatcher.h" 52 #include "content/renderer/dom_storage/dom_storage_dispatcher.h"
51 #include "content/renderer/dom_storage/webstoragearea_impl.h" 53 #include "content/renderer/dom_storage/webstoragearea_impl.h"
52 #include "content/renderer/dom_storage/webstoragenamespace_impl.h" 54 #include "content/renderer/dom_storage/webstoragenamespace_impl.h"
53 #include "content/renderer/gpu/compositor_thread.h" 55 #include "content/renderer/gpu/compositor_thread.h"
54 #include "content/renderer/media/audio_input_message_filter.h" 56 #include "content/renderer/media/audio_input_message_filter.h"
55 #include "content/renderer/media/audio_message_filter.h" 57 #include "content/renderer/media/audio_message_filter.h"
56 #include "content/renderer/media/media_stream_center.h" 58 #include "content/renderer/media/media_stream_center.h"
57 #include "content/renderer/media/video_capture_impl_manager.h" 59 #include "content/renderer/media/video_capture_impl_manager.h"
58 #include "content/renderer/media/video_capture_message_filter.h" 60 #include "content/renderer/media/video_capture_message_filter.h"
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
205 widget_count_ = 0; 207 widget_count_ = 0;
206 hidden_widget_count_ = 0; 208 hidden_widget_count_ = 0;
207 idle_notification_delay_in_ms_ = kInitialIdleHandlerDelayMs; 209 idle_notification_delay_in_ms_ = kInitialIdleHandlerDelayMs;
208 idle_notifications_to_skip_ = 0; 210 idle_notifications_to_skip_ = 0;
209 compositor_initialized_ = false; 211 compositor_initialized_ = false;
210 212
211 appcache_dispatcher_.reset(new AppCacheDispatcher(Get())); 213 appcache_dispatcher_.reset(new AppCacheDispatcher(Get()));
212 dom_storage_dispatcher_.reset(new DomStorageDispatcher()); 214 dom_storage_dispatcher_.reset(new DomStorageDispatcher());
213 main_thread_indexed_db_dispatcher_.reset(new IndexedDBDispatcher()); 215 main_thread_indexed_db_dispatcher_.reset(new IndexedDBDispatcher());
214 216
217 browser_plugin_registry_.reset(new content::BrowserPluginRegistry());
218 browser_plugin_channel_manager_.reset(
219 new content::BrowserPluginChannelManager());
220 AddObserver(browser_plugin_channel_manager_.get());
221
215 media_stream_center_ = NULL; 222 media_stream_center_ = NULL;
216 223
217 db_message_filter_ = new DBMessageFilter(); 224 db_message_filter_ = new DBMessageFilter();
218 AddFilter(db_message_filter_.get()); 225 AddFilter(db_message_filter_.get());
219 226
220 vc_manager_ = new VideoCaptureImplManager(); 227 vc_manager_ = new VideoCaptureImplManager();
221 AddFilter(vc_manager_->video_capture_message_filter()); 228 AddFilter(vc_manager_->video_capture_message_filter());
222 229
223 audio_input_message_filter_ = new AudioInputMessageFilter(); 230 audio_input_message_filter_ = new AudioInputMessageFilter();
224 AddFilter(audio_input_message_filter_.get()); 231 AddFilter(audio_input_message_filter_.get());
(...skipping 629 matching lines...) Expand 10 before | Expand all | Expand 10 after
854 ++it, ++i) { 861 ++it, ++i) {
855 color_names[i] = it->first; 862 color_names[i] = it->first;
856 web_colors[i] = it->second; 863 web_colors[i] = it->second;
857 } 864 }
858 WebKit::setNamedColors(color_names.get(), web_colors.get(), num_colors); 865 WebKit::setNamedColors(color_names.get(), web_colors.get(), num_colors);
859 } 866 }
860 867
861 void RenderThreadImpl::OnCreateNewView(const ViewMsg_New_Params& params) { 868 void RenderThreadImpl::OnCreateNewView(const ViewMsg_New_Params& params) {
862 EnsureWebKitInitialized(); 869 EnsureWebKitInitialized();
863 // When bringing in render_view, also bring in webkit's glue and jsbindings. 870 // When bringing in render_view, also bring in webkit's glue and jsbindings.
864 RenderViewImpl::Create( 871 if (!params.embedder_channel_name.empty()) {
865 params.parent_window, 872 browser_plugin_channel_manager()->CreateRenderView(params);
866 params.opener_route_id, 873 } else {
867 params.renderer_preferences, 874 RenderViewImpl::Create(
868 params.web_preferences, 875 params.parent_window,
869 new SharedRenderViewCounter(0), 876 params.opener_route_id,
870 params.view_id, 877 params.renderer_preferences,
871 params.surface_id, 878 params.web_preferences,
872 params.session_storage_namespace_id, 879 new SharedRenderViewCounter(0),
873 params.frame_name, 880 params.view_id,
874 false, 881 params.surface_id,
875 params.swapped_out, 882 params.session_storage_namespace_id,
876 params.next_page_id, 883 params.frame_name,
877 params.screen_info, 884 false,
878 false, 885 params.swapped_out,
879 params.accessibility_mode); 886 params.next_page_id,
887 params.screen_info,
888 NULL,
889 params.accessibility_mode);
890 }
880 } 891 }
881 892
882 GpuChannelHost* RenderThreadImpl::EstablishGpuChannelSync( 893 GpuChannelHost* RenderThreadImpl::EstablishGpuChannelSync(
883 content::CauseForGpuLaunch cause_for_gpu_launch) { 894 content::CauseForGpuLaunch cause_for_gpu_launch) {
884 if (gpu_channel_.get()) { 895 if (gpu_channel_.get()) {
885 // Do nothing if we already have a GPU channel or are already 896 // Do nothing if we already have a GPU channel or are already
886 // establishing one. 897 // establishing one.
887 if (gpu_channel_->state() == GpuChannelHost::kUnconnected || 898 if (gpu_channel_->state() == GpuChannelHost::kUnconnected ||
888 gpu_channel_->state() == GpuChannelHost::kConnected) 899 gpu_channel_->state() == GpuChannelHost::kConnected)
889 return GetGpuChannel(); 900 return GetGpuChannel();
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
967 978
968 scoped_refptr<base::MessageLoopProxy> 979 scoped_refptr<base::MessageLoopProxy>
969 RenderThreadImpl::GetFileThreadMessageLoopProxy() { 980 RenderThreadImpl::GetFileThreadMessageLoopProxy() {
970 DCHECK(message_loop() == MessageLoop::current()); 981 DCHECK(message_loop() == MessageLoop::current());
971 if (!file_thread_.get()) { 982 if (!file_thread_.get()) {
972 file_thread_.reset(new base::Thread("Renderer::FILE")); 983 file_thread_.reset(new base::Thread("Renderer::FILE"));
973 file_thread_->Start(); 984 file_thread_->Start();
974 } 985 }
975 return file_thread_->message_loop_proxy(); 986 return file_thread_->message_loop_proxy();
976 } 987 }
OLDNEW
« no previous file with comments | « content/renderer/render_thread_impl.h ('k') | content/renderer/render_view_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698