diff options
author | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-31 21:11:41 +0000 |
---|---|---|
committer | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-31 21:11:41 +0000 |
commit | 6b5b0cdd4a0f98bd79bb891d0081f53bebaf7765 (patch) | |
tree | e4c2165940c78ca92b9984de2419d754577b2623 /chrome/browser | |
parent | 12c4b16bf04096402cb1002155a0cb1c83f6a4fb (diff) | |
download | chromium_src-6b5b0cdd4a0f98bd79bb891d0081f53bebaf7765.zip chromium_src-6b5b0cdd4a0f98bd79bb891d0081f53bebaf7765.tar.gz chromium_src-6b5b0cdd4a0f98bd79bb891d0081f53bebaf7765.tar.bz2 |
Send the RENDER_VIEW_HOST_DELETED notification for all RenderViewHost, instead of just ones for TabContents.
BUG=78030
Review URL: http://codereview.chromium.org/6758039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80075 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser')
6 files changed, 8 insertions, 7 deletions
diff --git a/chrome/browser/automation/automation_resource_message_filter.cc b/chrome/browser/automation/automation_resource_message_filter.cc index 95822cb..b6379c6 100644 --- a/chrome/browser/automation/automation_resource_message_filter.cc +++ b/chrome/browser/automation/automation_resource_message_filter.cc @@ -318,7 +318,8 @@ void AutomationResourceMessageFilter::UnRegisterRenderViewInIOThread( renderer_id))); if (automation_details_iter == filtered_render_views_.Get().end()) { - VLOG(1) << "UnRegisterRenderViewInIOThread: already unregistered"; + // This is called for all RenderViewHosts, so it's fine if we don't find a + // match. return; } diff --git a/chrome/browser/debugger/devtools_manager.cc b/chrome/browser/debugger/devtools_manager.cc index 29d752d..61dec4b 100644 --- a/chrome/browser/debugger/devtools_manager.cc +++ b/chrome/browser/debugger/devtools_manager.cc @@ -199,7 +199,7 @@ void DevToolsManager::Observe(NotificationType type, const NotificationSource& source, const NotificationDetails& details) { DCHECK(type == NotificationType::RENDER_VIEW_HOST_DELETED); - UnregisterDevToolsClientHostFor(Details<RenderViewHost>(details).ptr()); + UnregisterDevToolsClientHostFor(Source<RenderViewHost>(source).ptr()); } RenderViewHost* DevToolsManager::GetInspectedRenderViewHost( diff --git a/chrome/browser/extensions/extension_message_service.cc b/chrome/browser/extensions/extension_message_service.cc index 4f4035b..c905436 100644 --- a/chrome/browser/extensions/extension_message_service.cc +++ b/chrome/browser/extensions/extension_message_service.cc @@ -335,7 +335,7 @@ void ExtensionMessageService::Observe(NotificationType type, break; } case NotificationType::RENDER_VIEW_HOST_DELETED: - OnSenderClosed(Details<RenderViewHost>(details).ptr()); + OnSenderClosed(Source<RenderViewHost>(source).ptr()); break; default: NOTREACHED(); diff --git a/chrome/browser/extensions/extension_tab_id_map.cc b/chrome/browser/extensions/extension_tab_id_map.cc index ea3dac1..0d12ce5 100644 --- a/chrome/browser/extensions/extension_tab_id_map.cc +++ b/chrome/browser/extensions/extension_tab_id_map.cc @@ -84,7 +84,7 @@ void ExtensionTabIdMap::TabObserver::Observe( break; } case NotificationType::RENDER_VIEW_HOST_DELETED: { - RenderViewHost* host = Details<RenderViewHost>(details).ptr(); + RenderViewHost* host = Source<RenderViewHost>(source).ptr(); BrowserThread::PostTask( BrowserThread::IO, FROM_HERE, NewRunnableMethod( diff --git a/chrome/browser/extensions/extensions_ui.cc b/chrome/browser/extensions/extensions_ui.cc index 420b83f..089b240 100644 --- a/chrome/browser/extensions/extensions_ui.cc +++ b/chrome/browser/extensions/extensions_ui.cc @@ -637,7 +637,7 @@ void ExtensionsDOMHandler::Observe(NotificationType type, // Doing it this way gets everything but causes the page to be rendered // more than we need. It doesn't seem to result in any noticeable flicker. case NotificationType::RENDER_VIEW_HOST_DELETED: - deleting_rvh_ = Details<RenderViewHost>(details).ptr(); + deleting_rvh_ = Source<RenderViewHost>(source).ptr(); MaybeUpdateAfterNotification(); break; case NotificationType::BACKGROUND_CONTENTS_DELETED: diff --git a/chrome/browser/external_tab_container_win.cc b/chrome/browser/external_tab_container_win.cc index 592a707..33d1fc1 100644 --- a/chrome/browser/external_tab_container_win.cc +++ b/chrome/browser/external_tab_container_win.cc @@ -175,7 +175,7 @@ bool ExternalTabContainer::Init(Profile* profile, registrar_.Add(this, NotificationType::RENDER_VIEW_HOST_CREATED_FOR_TAB, Source<TabContents>(tab_contents_->tab_contents())); registrar_.Add(this, NotificationType::RENDER_VIEW_HOST_DELETED, - Source<TabContents>(tab_contents_->tab_contents())); + NotificationService::AllSources()); NotificationService::current()->Notify( NotificationType::EXTERNAL_TAB_CREATED, @@ -792,7 +792,7 @@ void ExternalTabContainer::Observe(NotificationType type, } case NotificationType::RENDER_VIEW_HOST_DELETED: { if (load_requests_via_automation_) { - RenderViewHost* rvh = Details<RenderViewHost>(details).ptr(); + RenderViewHost* rvh = Source<RenderViewHost>(source).ptr(); UnregisterRenderViewHost(rvh); } break; |