Index: chrome/browser/extensions/extension_system_impl.h |
diff --git a/chrome/browser/extensions/extension_system_impl.h b/chrome/browser/extensions/extension_system_impl.h |
index 03a6c890a8b175a07277e481c72066c4696ed85f..fb8d8f1de28b5b141de3b4142c3c3833bd3065f6 100644 |
--- a/chrome/browser/extensions/extension_system_impl.h |
+++ b/chrome/browser/extensions/extension_system_impl.h |
@@ -9,6 +9,8 @@ |
#include "base/macros.h" |
#include "build/build_config.h" |
+#include "content/public/browser/notification_observer.h" |
+#include "content/public/browser/notification_registrar.h" |
#include "extensions/browser/extension_system.h" |
#include "extensions/common/one_shot_event.h" |
@@ -78,7 +80,7 @@ class ExtensionSystemImpl : public ExtensionSystem { |
// Owns the Extension-related systems that have a single instance |
// shared between normal and incognito profiles. |
- class Shared : public KeyedService { |
+ class Shared : public KeyedService, public content::NotificationObserver { |
public: |
explicit Shared(Profile* profile); |
~Shared() override; |
@@ -108,10 +110,16 @@ class ExtensionSystemImpl : public ExtensionSystem { |
ContentVerifier* content_verifier(); |
private: |
+ // content::NotificationObserver implementation. |
+ void Observe(int type, |
+ const content::NotificationSource& source, |
+ const content::NotificationDetails& details) override; |
+ |
Profile* profile_; |
// The services that are shared between normal and incognito profiles. |
+ content::NotificationRegistrar registrar_; |
std::unique_ptr<StateStore> state_store_; |
std::unique_ptr<StateStoreNotificationObserver> |
state_store_notification_observer_; |