Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(894)

Unified Diff: chrome/browser/ui/ash/launcher/chrome_launcher_controller.h

Issue 565213002: ChromeLaunchController does proper action when extension unloaded (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
diff --git a/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h b/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
index d5f4e82b46a414e92ad7f4071091a7eea2e1776d..bf4dd19557376bca6ca30351d12286e41d2fd28c 100644
--- a/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
+++ b/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
@@ -31,8 +31,7 @@
#include "chrome/browser/ui/ash/launcher/chrome_launcher_types.h"
#include "chrome/browser/ui/extensions/extension_enable_flow_delegate.h"
#include "chrome/common/extensions/extension_constants.h"
-#include "content/public/browser/notification_observer.h"
-#include "content/public/browser/notification_registrar.h"
+#include "extensions/browser/extension_registry_observer.h"
#include "ui/aura/window_observer.h"
class AppSyncUIState;
@@ -61,6 +60,7 @@ class WebContents;
namespace extensions {
class Extension;
+class ExtensionRegistry;
}
namespace ui {
@@ -93,9 +93,9 @@ class ChromeLauncherController : public ash::ShelfDelegate,
public ash::ShelfModelObserver,
public ash::ShellObserver,
public ash::DisplayController::Observer,
- public content::NotificationObserver,
public extensions::AppIconLoader::Delegate,
public PrefServiceSyncableObserver,
+ public extensions::ExtensionRegistryObserver,
public AppSyncUIStateObserver,
public ExtensionEnableFlowDelegate,
public ash::ShelfLayoutManagerObserver {
@@ -308,10 +308,13 @@ class ChromeLauncherController : public ash::ShelfDelegate,
const ash::ShelfItem& old_item) OVERRIDE;
virtual void ShelfStatusChanged() OVERRIDE;
- // content::NotificationObserver overrides:
- virtual void Observe(int type,
- const content::NotificationSource& source,
- const content::NotificationDetails& details) OVERRIDE;
+ 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;
// ash::ShellObserver overrides:
virtual void OnShelfAlignmentChanged(aura::Window* root_window) OVERRIDE;
@@ -575,7 +578,8 @@ class ChromeLauncherController : public ash::ShelfDelegate,
// Used to load the image for an app item.
scoped_ptr<extensions::AppIconLoader> app_icon_loader_;
- content::NotificationRegistrar notification_registrar_;
+ // Used to get extension loaded, unloaded notifications.
+ extensions::ExtensionRegistry* extension_registry_;
PrefChangeRegistrar pref_change_registrar_;

Powered by Google App Engine
This is Rietveld 408576698