Index: extensions/browser/process_manager.h |
diff --git a/extensions/browser/process_manager.h b/extensions/browser/process_manager.h |
index e7be9951e03233c48dfa27100a3bad0ade98e704..8de9bef4dcac7c3d953293c2087e12688f353d37 100644 |
--- a/extensions/browser/process_manager.h |
+++ b/extensions/browser/process_manager.h |
@@ -17,6 +17,7 @@ |
#include "base/time/time.h" |
#include "content/public/browser/notification_observer.h" |
#include "content/public/browser/notification_registrar.h" |
+#include "extensions/browser/extension_registry_observer.h" |
#include "extensions/common/view_type.h" |
class GURL; |
@@ -40,7 +41,8 @@ class ProcessManagerObserver; |
// Manages dynamic state of running Chromium extensions. There is one instance |
// of this class per Profile. OTR Profiles have a separate instance that keeps |
// track of split-mode extensions only. |
-class ProcessManager : public content::NotificationObserver { |
+class ProcessManager : public content::NotificationObserver, |
+ public extensions::ExtensionRegistryObserver { |
public: |
typedef std::set<extensions::ExtensionHost*> ExtensionHostSet; |
typedef ExtensionHostSet::const_iterator const_iterator; |
@@ -178,6 +180,16 @@ class ProcessManager : public content::NotificationObserver { |
const content::NotificationSource& source, |
const content::NotificationDetails& details) OVERRIDE; |
+ // extensions::ExtensionRegistryObserver: |
+ virtual void OnExtensionLoaded( |
+ content::BrowserContext* browser_context, |
+ const extensions::Extension* extension) OVERRIDE; |
+ |
+ virtual void OnExtensionUnloaded( |
+ content::BrowserContext* browser_context, |
+ const extensions::Extension* extension, |
+ extensions::UnloadedExtensionInfo::Reason reason) OVERRIDE; |
+ |
content::NotificationRegistrar registrar_; |
// The set of ExtensionHosts running viewless background extensions. |