Chromium Code Reviews| Index: chrome/browser/ui/hung_plugin_tab_helper.h |
| diff --git a/chrome/browser/ui/hung_plugin_tab_helper.h b/chrome/browser/ui/hung_plugin_tab_helper.h |
| index 6cf1a395a86f55ca1a1b4ab39cad98ea133ceec7..4c4864484ffb80d2c632a662f0c96b0923ae3d28 100644 |
| --- a/chrome/browser/ui/hung_plugin_tab_helper.h |
| +++ b/chrome/browser/ui/hung_plugin_tab_helper.h |
| @@ -11,8 +11,7 @@ |
| #include "base/strings/string16.h" |
| #include "base/time/time.h" |
| #include "base/timer/timer.h" |
| -#include "content/public/browser/notification_observer.h" |
| -#include "content/public/browser/notification_registrar.h" |
| +#include "components/infobars/core/infobar_manager.h" |
| #include "content/public/browser/web_contents_observer.h" |
| #include "content/public/browser/web_contents_user_data.h" |
| @@ -37,8 +36,8 @@ class InfoBarDelegate; |
| // - Hide the infobar if the plugin starts responding again. |
| // - Keep track of all of this for any number of plugins. |
| class HungPluginTabHelper |
| - : public content::WebContentsObserver, |
| - public content::NotificationObserver, |
| + : public infobars::InfoBarManager::Observer, |
| + public content::WebContentsObserver, |
| public content::WebContentsUserData<HungPluginTabHelper> { |
| public: |
| virtual ~HungPluginTabHelper(); |
| @@ -50,11 +49,6 @@ class HungPluginTabHelper |
| const base::FilePath& plugin_path, |
| bool is_hung) OVERRIDE; |
| - // content::NotificationObserver: |
| - virtual void Observe(int type, |
| - const content::NotificationSource& source, |
| - const content::NotificationDetails& details) OVERRIDE; |
| - |
| // Called by an infobar when the user selects to kill the plugin. |
| void KillPlugin(int child_id); |
| @@ -77,11 +71,17 @@ class HungPluginTabHelper |
| // be called even if the bar is not opened, in which case it will do nothing. |
| void CloseBar(PluginState* state); |
| - content::NotificationRegistrar registrar_; |
| + // infobars::InfoBarManager::Observer: |
| + virtual void OnInfoBarRemoved(infobars::InfoBar* infobar, |
| + bool animate) OVERRIDE; |
| // All currently hung plugins. |
| PluginStateMap hung_plugins_; |
| + // The number of hung plugin infobars open. We use this to determine when we |
| + // should remove ourselves as an observer of InfoBarManager notifications. |
|
Peter Kasting
2014/06/03 18:41:45
Nit: ourself
tfarina
2014/06/07 05:27:46
Done.
|
| + int number_of_infobars_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(HungPluginTabHelper); |
| }; |