Index: chrome/browser/ui/panels/panel.h |
diff --git a/chrome/browser/ui/panels/panel.h b/chrome/browser/ui/panels/panel.h |
index 556fb1375cfee8f8684a6dddfedc1cbcb5c3227c..4e53ec88ef461bc798e5187e81d2c90729d4e194 100644 |
--- a/chrome/browser/ui/panels/panel.h |
+++ b/chrome/browser/ui/panels/panel.h |
@@ -17,6 +17,7 @@ |
#include "components/sessions/session_id.h" |
#include "content/public/browser/notification_observer.h" |
#include "content/public/browser/notification_registrar.h" |
+#include "extensions/browser/extension_registry_observer.h" |
#include "ui/base/base_window.h" |
#include "ui/gfx/image/image.h" |
#include "ui/gfx/rect.h" |
@@ -36,6 +37,7 @@ struct NativeWebKeyboardEvent; |
namespace extensions { |
class Extension; |
+class ExtensionRegistry; |
class WindowController; |
} |
@@ -50,7 +52,8 @@ class WindowController; |
// other Panels. For example deleting a panel would rearrange other panels. |
class Panel : public ui::BaseWindow, |
public CommandUpdaterDelegate, |
- public content::NotificationObserver { |
+ public content::NotificationObserver, |
+ public extensions::ExtensionRegistryObserver { |
public: |
enum ExpansionState { |
// The panel is fully expanded with both title-bar and the client-area. |
@@ -145,6 +148,12 @@ class Panel : public ui::BaseWindow, |
const content::NotificationSource& source, |
const content::NotificationDetails& details) OVERRIDE; |
+ // extensions::ExtensionRegistryObserver. |
+ virtual void OnExtensionUnloaded( |
+ content::BrowserContext* browser_context, |
+ const extensions::Extension* extension, |
+ extensions::UnloadedExtensionInfo::Reason reason) OVERRIDE; |
+ |
// Construct a native panel implementation. |
static NativePanel* CreateNativePanel(Panel* panel, |
const gfx::Rect& bounds, |
@@ -388,6 +397,7 @@ class Panel : public ui::BaseWindow, |
CommandUpdater command_updater_; |
content::NotificationRegistrar registrar_; |
+ extensions::ExtensionRegistry* extension_registry_; |
const SessionID session_id_; |
scoped_ptr<extensions::WindowController> extension_window_controller_; |
scoped_ptr<PanelHost> panel_host_; |