OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_PLUGIN_OBSERVER_H_ | 5 #ifndef CHROME_BROWSER_PLUGIN_OBSERVER_H_ |
6 #define CHROME_BROWSER_PLUGIN_OBSERVER_H_ | 6 #define CHROME_BROWSER_PLUGIN_OBSERVER_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "content/browser/tab_contents/tab_contents_observer.h" | 9 #include "content/browser/tab_contents/tab_contents_observer.h" |
10 | 10 |
11 class FilePath; | 11 class FilePath; |
12 class GURL; | 12 class GURL; |
13 class InfoBarDelegate; | 13 class InfoBarDelegate; |
14 class PluginInstallerInfoBarDelegate; | 14 class PluginInstallerInfoBarDelegate; |
15 class TabContentsWrapper; | 15 class TabContentsWrapper; |
16 | 16 |
17 class PluginObserver : public TabContentsObserver { | 17 class PluginObserver : public TabContentsObserver { |
18 public: | 18 public: |
19 explicit PluginObserver(TabContentsWrapper* tab_contents); | 19 explicit PluginObserver(TabContentsWrapper* tab_contents); |
20 virtual ~PluginObserver(); | 20 virtual ~PluginObserver(); |
21 | 21 |
22 // IPC::Channel::Listener implementation. | 22 // IPC::Channel::Listener implementation. |
23 virtual bool OnMessageReceived(const IPC::Message& message); | 23 virtual bool OnMessageReceived(const IPC::Message& message); |
24 | 24 |
| 25 // Helper function to handle missing plugin status. |
| 26 static void OnMissingPluginStatus(int status, |
| 27 int render_process_id, |
| 28 int render_view_id, |
| 29 int window); |
| 30 |
25 private: | 31 private: |
26 // Returns the PluginInstallerInfoBarDelegate, creating it if necessary. | |
27 PluginInstallerInfoBarDelegate* GetPluginInstaller(); | |
28 | |
29 void OnMissingPluginStatus(int status); | |
30 void OnCrashedPlugin(const FilePath& plugin_path); | 32 void OnCrashedPlugin(const FilePath& plugin_path); |
31 void OnBlockedOutdatedPlugin(const string16& name, const GURL& update_url); | 33 void OnBlockedOutdatedPlugin(const string16& name, const GURL& update_url); |
32 | 34 |
33 TabContentsWrapper* tab_contents_; | 35 TabContentsWrapper* tab_contents_; |
34 scoped_ptr<InfoBarDelegate> plugin_installer_; // Lazily created. | 36 scoped_ptr<InfoBarDelegate> plugin_installer_; // Lazily created. |
35 | 37 |
36 DISALLOW_COPY_AND_ASSIGN(PluginObserver); | 38 DISALLOW_COPY_AND_ASSIGN(PluginObserver); |
37 }; | 39 }; |
38 | 40 |
39 #endif // CHROME_BROWSER_PLUGIN_OBSERVER_H_ | 41 #endif // CHROME_BROWSER_PLUGIN_OBSERVER_H_ |
OLD | NEW |