Index: chrome/browser/ui/webui/extensions/extension_settings_handler.h |
diff --git a/chrome/browser/ui/webui/extensions/extension_settings_handler.h b/chrome/browser/ui/webui/extensions/extension_settings_handler.h |
index 44573e11b8ab35676483a7f2d7a35349af72a94c..ef35e933ac487efc3e5098f1c81a5675091048cc 100644 |
--- a/chrome/browser/ui/webui/extensions/extension_settings_handler.h |
+++ b/chrome/browser/ui/webui/extensions/extension_settings_handler.h |
@@ -25,6 +25,7 @@ |
#include "content/public/browser/web_ui_message_handler.h" |
#include "extensions/browser/extension_prefs.h" |
#include "extensions/browser/extension_prefs_observer.h" |
+#include "extensions/browser/extension_registry_observer.h" |
#include "url/gurl.h" |
class ExtensionService; |
@@ -45,6 +46,7 @@ class PrefRegistrySyncable; |
namespace extensions { |
class Extension; |
+class ExtensionRegistry; |
class ManagementPolicy; |
// Information about a page running in an extension, for example a popup bubble, |
@@ -70,6 +72,7 @@ class ExtensionSettingsHandler |
public ErrorConsole::Observer, |
public ExtensionInstallPrompt::Delegate, |
public ExtensionPrefsObserver, |
+ public ExtensionRegistryObserver, |
public ExtensionUninstallDialog::Delegate, |
public ExtensionWarningService::Observer, |
public base::SupportsWeakPtr<ExtensionSettingsHandler> { |
@@ -115,6 +118,16 @@ class ExtensionSettingsHandler |
const content::NotificationSource& source, |
const content::NotificationDetails& details) OVERRIDE; |
+ // ExtensionRegistryObserver implementation. |
+ virtual void OnExtensionLoaded(content::BrowserContext* browser_context, |
+ const Extension* extension) OVERRIDE; |
+ virtual void OnExtensionUnloaded( |
+ content::BrowserContext* browser_context, |
+ const Extension* extension, |
+ UnloadedExtensionInfo::Reason reason) OVERRIDE; |
+ virtual void OnExtensionUninstalled(content::BrowserContext* browser_context, |
+ const Extension* extension) OVERRIDE; |
+ |
// ExtensionPrefsObserver implementation. |
virtual void OnExtensionDisableReasonsChanged(const std::string& extension_id, |
int disable_reasons) OVERRIDE; |
@@ -279,6 +292,9 @@ class ExtensionSettingsHandler |
ScopedObserver<ExtensionPrefs, ExtensionPrefsObserver> |
extension_prefs_observer_; |
+ ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver> |
+ extension_registry_observer_; |
+ |
// Whether we found any DISABLE_NOT_VERIFIED extensions and want to kick off |
// a verification check to try and rescue them. |
bool should_do_verification_check_; |