Index: content/renderer/render_thread_impl.cc |
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc |
index dae9cd06fbf47c4972e17fc98615c02e62b1af4c..122781ec659a77213a0ef6e606e560d6673f75bc 100644 |
--- a/content/renderer/render_thread_impl.cc |
+++ b/content/renderer/render_thread_impl.cc |
@@ -212,6 +212,10 @@ void RenderThreadImpl::Init() { |
dom_storage_dispatcher_.reset(new DomStorageDispatcher()); |
main_thread_indexed_db_dispatcher_.reset(new IndexedDBDispatcher()); |
+ browser_plugin_registry_.reset(new content::BrowserPluginRegistry()); |
+ channel_manager_ = new content::BrowserPluginChannelManager(); |
+ AddObserver(channel_manager_.get()); |
+ |
media_stream_center_ = NULL; |
db_message_filter_ = new DBMessageFilter(); |
@@ -266,6 +270,8 @@ RenderThreadImpl::~RenderThreadImpl() { |
RemoveFilter(db_message_filter_.get()); |
db_message_filter_ = NULL; |
+ channel_manager_ = NULL; |
+ |
// Shutdown the file thread if it's running. |
if (file_thread_.get()) |
file_thread_->Stop(); |
@@ -861,22 +867,25 @@ void RenderThreadImpl::OnSetCSSColors( |
void RenderThreadImpl::OnCreateNewView(const ViewMsg_New_Params& params) { |
EnsureWebKitInitialized(); |
// When bringing in render_view, also bring in webkit's glue and jsbindings. |
- RenderViewImpl::Create( |
- params.parent_window, |
- params.opener_route_id, |
- params.renderer_preferences, |
- params.web_preferences, |
- new SharedRenderViewCounter(0), |
- params.view_id, |
- params.surface_id, |
- params.session_storage_namespace_id, |
- params.frame_name, |
- false, |
- params.swapped_out, |
- params.next_page_id, |
- params.screen_info, |
- false, |
- params.accessibility_mode); |
+ if (!params.embedder_channel_name.empty()) |
jam
2012/05/16 02:22:40
nit: per style guide, use brace brackets
Fady Samuel
2012/05/16 04:43:54
Done.
|
+ channel_manager_->CreateRenderView(params); |
+ else |
+ RenderViewImpl::Create( |
+ params.parent_window, |
+ params.opener_route_id, |
+ params.renderer_preferences, |
+ params.web_preferences, |
+ new SharedRenderViewCounter(0), |
+ params.view_id, |
+ params.surface_id, |
+ params.session_storage_namespace_id, |
+ params.frame_name, |
+ false, |
+ params.swapped_out, |
+ params.next_page_id, |
+ params.screen_info, |
+ NULL, |
+ params.accessibility_mode); |
} |
GpuChannelHost* RenderThreadImpl::EstablishGpuChannelSync( |