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_RENDERER_HOST_CHROME_RENDER_VIEW_HOST_OBSERVER_H_ | 5 #ifndef CHROME_BROWSER_RENDERER_HOST_CHROME_RENDER_VIEW_HOST_OBSERVER_H_ |
6 #define CHROME_BROWSER_RENDERER_HOST_CHROME_RENDER_VIEW_HOST_OBSERVER_H_ | 6 #define CHROME_BROWSER_RENDERER_HOST_CHROME_RENDER_VIEW_HOST_OBSERVER_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "content/public/browser/render_view_host_observer.h" | 9 #include "content/public/browser/render_view_host_observer.h" |
10 | 10 |
11 namespace chrome_browser_net { | 11 namespace chrome_browser_net { |
12 class Predictor; | 12 class Predictor; |
13 } | 13 } |
14 | 14 |
| 15 namespace content { |
| 16 class WebContents; |
| 17 } |
| 18 |
15 class Extension; | 19 class Extension; |
16 class Profile; | 20 class Profile; |
17 | 21 |
18 // This class holds the Chrome specific parts of RenderViewHost, and has the | 22 // This class holds the Chrome specific parts of RenderViewHost, and has the |
19 // same lifetime. | 23 // same lifetime. |
20 class ChromeRenderViewHostObserver : public content::RenderViewHostObserver { | 24 class ChromeRenderViewHostObserver : public content::RenderViewHostObserver { |
21 public: | 25 public: |
22 ChromeRenderViewHostObserver(content::RenderViewHost* render_view_host, | 26 ChromeRenderViewHostObserver(content::RenderViewHost* render_view_host, |
23 chrome_browser_net::Predictor* predictor); | 27 chrome_browser_net::Predictor* predictor); |
24 virtual ~ChromeRenderViewHostObserver(); | 28 virtual ~ChromeRenderViewHostObserver(); |
25 | 29 |
26 // content::RenderViewHostObserver overrides. | 30 // content::RenderViewHostObserver overrides. |
27 virtual void RenderViewHostInitialized() OVERRIDE; | 31 virtual void RenderViewHostInitialized() OVERRIDE; |
28 virtual void RenderViewHostDestroyed(content::RenderViewHost* rvh) OVERRIDE; | 32 virtual void RenderViewHostDestroyed(content::RenderViewHost* rvh) OVERRIDE; |
29 virtual void Navigate(const GURL& url) OVERRIDE; | 33 virtual void Navigate(const GURL& url) OVERRIDE; |
30 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; | 34 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; |
31 | 35 |
32 private: | 36 private: |
33 // Does extension-specific initialization when a new RenderViewHost is | 37 // Does extension-specific initialization when a new RenderViewHost is |
34 // created. | 38 // created. |
35 void InitRenderViewHostForExtensions(); | 39 void InitRenderViewHostForExtensions(); |
36 // Does extension-specific initialization when a new renderer process is | 40 // Does extension-specific initialization when a new renderer process is |
37 // created by a RenderViewHost. | 41 // created by a RenderViewHost. |
38 void InitRenderViewForExtensions(); | 42 void InitRenderViewForExtensions(); |
39 // Gets the extension or app (if any) that is associated with the RVH. | 43 // Gets the extension or app (if any) that is associated with the RVH. |
40 const Extension* GetExtension(); | 44 const Extension* GetExtension(); |
41 // Cleans up when a RenderViewHost is removed, or on destruction. | 45 // Cleans up when a RenderViewHost is removed, or on destruction. |
42 void RemoveRenderViewHostForExtensions(content::RenderViewHost* rvh); | 46 void RemoveRenderViewHostForExtensions(content::RenderViewHost* rvh); |
| 47 // Retrieves the WebContents for a RenderViewHost. |
| 48 content::WebContents* GetWebContents(content::RenderViewHost* rvh); |
43 void OnFocusedEditableNodeTouched(); | 49 void OnFocusedEditableNodeTouched(); |
44 | 50 |
45 Profile* profile_; | 51 Profile* profile_; |
46 chrome_browser_net::Predictor* predictor_; | 52 chrome_browser_net::Predictor* predictor_; |
47 | 53 |
48 DISALLOW_COPY_AND_ASSIGN(ChromeRenderViewHostObserver); | 54 DISALLOW_COPY_AND_ASSIGN(ChromeRenderViewHostObserver); |
49 }; | 55 }; |
50 | 56 |
51 #endif // CHROME_BROWSER_RENDERER_HOST_CHROME_RENDER_VIEW_HOST_OBSERVER_H_ | 57 #endif // CHROME_BROWSER_RENDERER_HOST_CHROME_RENDER_VIEW_HOST_OBSERVER_H_ |
OLD | NEW |