OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_EXTENSIONS_EXTENSION_HOST_H_ | 5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_ |
6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_ | 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 12 matching lines...) Expand all Loading... |
23 #include "chrome/browser/ui/views/extensions/extension_view.h" | 23 #include "chrome/browser/ui/views/extensions/extension_view.h" |
24 #elif defined(OS_MACOSX) | 24 #elif defined(OS_MACOSX) |
25 #include "chrome/browser/ui/cocoa/extensions/extension_view_mac.h" | 25 #include "chrome/browser/ui/cocoa/extensions/extension_view_mac.h" |
26 #elif defined(TOOLKIT_GTK) | 26 #elif defined(TOOLKIT_GTK) |
27 #include "chrome/browser/ui/gtk/extensions/extension_view_gtk.h" | 27 #include "chrome/browser/ui/gtk/extensions/extension_view_gtk.h" |
28 #elif defined(OS_ANDROID) | 28 #elif defined(OS_ANDROID) |
29 #include "chrome/browser/ui/android/extensions/extension_view_android.h" | 29 #include "chrome/browser/ui/android/extensions/extension_view_android.h" |
30 #endif | 30 #endif |
31 | 31 |
32 class Browser; | 32 class Browser; |
33 class ExtensionWindowController; | |
34 class PrefsTabHelper; | 33 class PrefsTabHelper; |
35 | 34 |
36 namespace content { | 35 namespace content { |
37 class RenderProcessHost; | 36 class RenderProcessHost; |
38 class RenderWidgetHostView; | 37 class RenderWidgetHostView; |
39 class SiteInstance; | 38 class SiteInstance; |
40 } | 39 } |
41 | 40 |
42 namespace extensions { | 41 namespace extensions { |
43 class Extension; | 42 class Extension; |
| 43 class WindowController; |
44 } | 44 } |
45 | 45 |
46 // This class is the browser component of an extension component's RenderView. | 46 // This class is the browser component of an extension component's RenderView. |
47 // It handles setting up the renderer process, if needed, with special | 47 // It handles setting up the renderer process, if needed, with special |
48 // privileges available to extensions. It may have a view to be shown in the | 48 // privileges available to extensions. It may have a view to be shown in the |
49 // browser UI, or it may be hidden. | 49 // browser UI, or it may be hidden. |
50 class ExtensionHost : public content::WebContentsDelegate, | 50 class ExtensionHost : public content::WebContentsDelegate, |
51 public content::WebContentsObserver, | 51 public content::WebContentsObserver, |
52 public ExtensionFunctionDispatcher::Delegate, | 52 public ExtensionFunctionDispatcher::Delegate, |
53 public content::NotificationObserver { | 53 public content::NotificationObserver { |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
176 // Actually create the RenderView for this host. See CreateRenderViewSoon. | 176 // Actually create the RenderView for this host. See CreateRenderViewSoon. |
177 void CreateRenderViewNow(); | 177 void CreateRenderViewNow(); |
178 | 178 |
179 // Navigates to the initial page. | 179 // Navigates to the initial page. |
180 void LoadInitialURL(); | 180 void LoadInitialURL(); |
181 | 181 |
182 // Closes this host (results in deletion). | 182 // Closes this host (results in deletion). |
183 void Close(); | 183 void Close(); |
184 | 184 |
185 // ExtensionFunctionDispatcher::Delegate | 185 // ExtensionFunctionDispatcher::Delegate |
186 virtual ExtensionWindowController* | 186 virtual extensions::WindowController* |
187 GetExtensionWindowController() const OVERRIDE; | 187 GetExtensionWindowController() const OVERRIDE; |
188 | 188 |
189 // Message handlers. | 189 // Message handlers. |
190 void OnRequest(const ExtensionHostMsg_Request_Params& params); | 190 void OnRequest(const ExtensionHostMsg_Request_Params& params); |
191 void OnEventAck(); | 191 void OnEventAck(); |
192 void OnIncrementLazyKeepaliveCount(); | 192 void OnIncrementLazyKeepaliveCount(); |
193 void OnDecrementLazyKeepaliveCount(); | 193 void OnDecrementLazyKeepaliveCount(); |
194 | 194 |
195 // Handles keyboard events that were not handled by HandleKeyboardEvent(). | 195 // Handles keyboard events that were not handled by HandleKeyboardEvent(). |
196 // Platform specific implementation may override this method to handle the | 196 // Platform specific implementation may override this method to handle the |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
249 // The relevant WebContents associated with this ExtensionHost, if any. | 249 // The relevant WebContents associated with this ExtensionHost, if any. |
250 content::WebContents* associated_web_contents_; | 250 content::WebContents* associated_web_contents_; |
251 | 251 |
252 // Used to measure how long it's been since the host was created. | 252 // Used to measure how long it's been since the host was created. |
253 PerfTimer since_created_; | 253 PerfTimer since_created_; |
254 | 254 |
255 DISALLOW_COPY_AND_ASSIGN(ExtensionHost); | 255 DISALLOW_COPY_AND_ASSIGN(ExtensionHost); |
256 }; | 256 }; |
257 | 257 |
258 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_ | 258 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_HOST_H_ |
OLD | NEW |