diff options
author | asargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-23 22:14:27 +0000 |
---|---|---|
committer | asargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-23 22:14:27 +0000 |
commit | a9f39a313b7ecc11d98727d869e15094481f3a65 (patch) | |
tree | 314811ad11e00470fe2bf0cbb00b0fb204d6019f /chrome/browser/ui | |
parent | 2c6ed18ba01a4f0451517411bf1d98812078f19d (diff) | |
download | chromium_src-a9f39a313b7ecc11d98727d869e15094481f3a65.zip chromium_src-a9f39a313b7ecc11d98727d869e15094481f3a65.tar.gz chromium_src-a9f39a313b7ecc11d98727d869e15094481f3a65.tar.bz2 |
Change extension unload notification to indicate updates.
When an extension in being unloaded, some listeners want to know if it's
because the extension is being updated to a newer version, or disabled. This
changes the details sent to include a reason.
Also this removes the EXTENSION_UNLOADED_DISABLED notification, since only a
small number of places actually cared about the disctinction between
EXTENSION_UNLOADED and EXTENSION_UNLOADED_DISABLED, and puts that information
into the details as well.
BUG=65510
TEST=Should be covered by existing unit & browser tests.
Review URL: http://codereview.chromium.org/5968009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70104 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui')
-rw-r--r-- | chrome/browser/ui/browser.cc | 8 | ||||
-rw-r--r-- | chrome/browser/ui/views/extensions/extension_installed_bubble.cc | 3 |
2 files changed, 5 insertions, 6 deletions
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc index 44c28b6d..9d0353c 100644 --- a/chrome/browser/ui/browser.cc +++ b/chrome/browser/ui/browser.cc @@ -213,8 +213,6 @@ Browser::Browser(Type type, Profile* profile) NotificationService::AllSources()); registrar_.Add(this, NotificationType::EXTENSION_UNLOADED, NotificationService::AllSources()); - registrar_.Add(this, NotificationType::EXTENSION_UNLOADED_DISABLED, - NotificationService::AllSources()); registrar_.Add(this, NotificationType::EXTENSION_PROCESS_TERMINATED, NotificationService::AllSources()); registrar_.Add(this, NotificationType::BROWSER_THEME_CHANGED, @@ -3212,12 +3210,12 @@ void Browser::Observe(NotificationType type, break; } - case NotificationType::EXTENSION_UNLOADED: - case NotificationType::EXTENSION_UNLOADED_DISABLED: { + case NotificationType::EXTENSION_UNLOADED: { window()->GetLocationBar()->UpdatePageActions(); // Close any tabs from the unloaded extension. - const Extension* extension = Details<const Extension>(details).ptr(); + const Extension* extension = + Details<UnloadedExtensionInfo>(details)->extension; TabStripModel* model = tab_handler_->GetTabStripModel(); for (int i = model->count() - 1; i >= 0; --i) { TabContents* tc = model->GetTabContentsAt(i)->tab_contents(); diff --git a/chrome/browser/ui/views/extensions/extension_installed_bubble.cc b/chrome/browser/ui/views/extensions/extension_installed_bubble.cc index bbac784..1b549d3 100644 --- a/chrome/browser/ui/views/extensions/extension_installed_bubble.cc +++ b/chrome/browser/ui/views/extensions/extension_installed_bubble.cc @@ -268,7 +268,8 @@ void ExtensionInstalledBubble::Observe(NotificationType type, &ExtensionInstalledBubble::ShowInternal)); } } else if (type == NotificationType::EXTENSION_UNLOADED) { - const Extension* extension = Details<const Extension>(details).ptr(); + const Extension* extension = + Details<UnloadedExtensionInfo>(details)->extension; if (extension == extension_) extension_ = NULL; } else { |