OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_RENDERER_PLUGINS_CHROME_PLUGIN_PLACEHOLDER_H_ | 5 #ifndef CHROME_RENDERER_PLUGINS_CHROME_PLUGIN_PLACEHOLDER_H_ |
6 #define CHROME_RENDERER_PLUGINS_CHROME_PLUGIN_PLACEHOLDER_H_ | 6 #define CHROME_RENDERER_PLUGINS_CHROME_PLUGIN_PLACEHOLDER_H_ |
7 | 7 |
8 #include "components/plugins/renderer/plugin_placeholder.h" | 8 #include "components/plugins/renderer/plugin_placeholder.h" |
9 | 9 |
10 struct ChromeViewHostMsg_GetPluginInfo_Status; | 10 struct ChromeViewHostMsg_GetPluginInfo_Status; |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 #endif | 42 #endif |
43 | 43 |
44 private: | 44 private: |
45 ChromePluginPlaceholder(content::RenderView* render_view, | 45 ChromePluginPlaceholder(content::RenderView* render_view, |
46 blink::WebFrame* frame, | 46 blink::WebFrame* frame, |
47 const blink::WebPluginParams& params, | 47 const blink::WebPluginParams& params, |
48 const std::string& html_data, | 48 const std::string& html_data, |
49 const string16& title); | 49 const string16& title); |
50 virtual ~ChromePluginPlaceholder(); | 50 virtual ~ChromePluginPlaceholder(); |
51 | 51 |
52 // WebViewPlugin::Delegate (via PluginPlaceholder) method | |
53 virtual void BindWebFrame(blink::WebFrame* frame) OVERRIDE; | |
54 | |
55 // content::RenderViewObserver (via PluginPlaceholder) override: | 52 // content::RenderViewObserver (via PluginPlaceholder) override: |
56 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; | 53 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; |
57 | 54 |
58 // WebViewPlugin::Delegate (via PluginPlaceholder) methods: | 55 // WebViewPlugin::Delegate (via PluginPlaceholder) methods: |
59 virtual void ShowContextMenu(const blink::WebMouseEvent&) OVERRIDE; | 56 virtual void ShowContextMenu(const blink::WebMouseEvent&) OVERRIDE; |
60 | 57 |
61 // content::RenderProcessObserver methods: | 58 // content::RenderProcessObserver methods: |
62 virtual void PluginListChanged() OVERRIDE; | 59 virtual void PluginListChanged() OVERRIDE; |
63 | 60 |
64 // content::ContextMenuClient methods: | 61 // content::ContextMenuClient methods: |
65 virtual void OnMenuAction(int request_id, unsigned action) OVERRIDE; | 62 virtual void OnMenuAction(int request_id, unsigned action) OVERRIDE; |
66 virtual void OnMenuClosed(int request_id) OVERRIDE; | 63 virtual void OnMenuClosed(int request_id) OVERRIDE; |
67 | 64 |
68 // Javascript callback opens chrome://plugins in a new tab. | 65 // Javascript callback opens chrome://plugins in a new tab. |
69 // Arguments are required by the caller, but not used. | 66 void OpenAboutPluginsCallback(); |
70 void OpenAboutPluginsCallback(const webkit_glue::CppArgumentList& args, | |
71 webkit_glue::CppVariant* result); | |
72 | 67 |
73 void OnLoadBlockedPlugins(const std::string& identifier); | 68 void OnLoadBlockedPlugins(const std::string& identifier); |
74 void OnSetIsPrerendering(bool is_prerendering); | 69 void OnSetIsPrerendering(bool is_prerendering); |
75 #if defined(ENABLE_PLUGIN_INSTALLATION) | 70 #if defined(ENABLE_PLUGIN_INSTALLATION) |
76 void OnDidNotFindMissingPlugin(); | 71 void OnDidNotFindMissingPlugin(); |
77 void OnFoundMissingPlugin(const string16& plugin_name); | 72 void OnFoundMissingPlugin(const string16& plugin_name); |
78 void OnStartedDownloadingPlugin(); | 73 void OnStartedDownloadingPlugin(); |
79 void OnFinishedDownloadingPlugin(); | 74 void OnFinishedDownloadingPlugin(); |
80 void OnErrorDownloadingPlugin(const std::string& error); | 75 void OnErrorDownloadingPlugin(const std::string& error); |
81 void OnCancelledDownloadingPlugin(); | 76 void OnCancelledDownloadingPlugin(); |
82 #endif | 77 #endif |
83 | 78 |
84 // We use a scoped_ptr so we can forward-declare the struct; it's defined in | 79 // We use a scoped_ptr so we can forward-declare the struct; it's defined in |
85 // an IPC message file which can't be easily included in other header files. | 80 // an IPC message file which can't be easily included in other header files. |
86 scoped_ptr<ChromeViewHostMsg_GetPluginInfo_Status> status_; | 81 scoped_ptr<ChromeViewHostMsg_GetPluginInfo_Status> status_; |
87 | 82 |
88 string16 title_; | 83 string16 title_; |
89 | 84 |
90 #if defined(ENABLE_PLUGIN_INSTALLATION) | 85 #if defined(ENABLE_PLUGIN_INSTALLATION) |
91 // |routing_id()| is the routing ID of our associated RenderView, but we have | 86 // |routing_id()| is the routing ID of our associated RenderView, but we have |
92 // a separate routing ID for messages specific to this placeholder. | 87 // a separate routing ID for messages specific to this placeholder. |
93 int32 placeholder_routing_id_; | 88 int32 placeholder_routing_id_; |
94 #endif | 89 #endif |
95 | 90 |
96 bool has_host_; | 91 bool has_host_; |
97 int context_menu_request_id_; // Nonzero when request pending. | 92 int context_menu_request_id_; // Nonzero when request pending. |
98 string16 plugin_name_; | 93 string16 plugin_name_; |
99 | 94 |
| 95 base::WeakPtrFactory<ChromePluginPlaceholder> weak_factory_; |
| 96 |
100 DISALLOW_COPY_AND_ASSIGN(ChromePluginPlaceholder); | 97 DISALLOW_COPY_AND_ASSIGN(ChromePluginPlaceholder); |
101 }; | 98 }; |
102 | 99 |
103 #endif // CHROME_RENDERER_PLUGINS_CHROME_PLUGIN_PLACEHOLDER_H_ | 100 #endif // CHROME_RENDERER_PLUGINS_CHROME_PLUGIN_PLACEHOLDER_H_ |
OLD | NEW |