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 CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ |
6 #define CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ | 6 #define CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/callback_forward.h" | 10 #include "base/callback_forward.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 namespace base { | 23 namespace base { |
24 class Value; | 24 class Value; |
25 } | 25 } |
26 | 26 |
27 namespace shell { | 27 namespace shell { |
28 class InterfaceRegistry; | 28 class InterfaceRegistry; |
29 class InterfaceProvider; | 29 class InterfaceProvider; |
30 } | 30 } |
31 | 31 |
32 namespace content { | 32 namespace content { |
| 33 class AssociatedInterfaceProvider; |
| 34 class AssociatedInterfaceRegistry; |
33 class RenderProcessHost; | 35 class RenderProcessHost; |
34 class RenderViewHost; | 36 class RenderViewHost; |
35 class RenderWidgetHostView; | 37 class RenderWidgetHostView; |
36 class SiteInstance; | 38 class SiteInstance; |
37 struct FileChooserFileInfo; | 39 struct FileChooserFileInfo; |
38 | 40 |
39 // The interface provides a communication conduit with a frame in the renderer. | 41 // The interface provides a communication conduit with a frame in the renderer. |
40 class CONTENT_EXPORT RenderFrameHost : public IPC::Listener, | 42 class CONTENT_EXPORT RenderFrameHost : public IPC::Listener, |
41 public IPC::Sender { | 43 public IPC::Sender { |
42 public: | 44 public: |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
184 virtual RenderViewHost* GetRenderViewHost() = 0; | 186 virtual RenderViewHost* GetRenderViewHost() = 0; |
185 | 187 |
186 // Returns the InterfaceRegistry that this process uses to expose interfaces | 188 // Returns the InterfaceRegistry that this process uses to expose interfaces |
187 // to the application running in this frame. | 189 // to the application running in this frame. |
188 virtual shell::InterfaceRegistry* GetInterfaceRegistry() = 0; | 190 virtual shell::InterfaceRegistry* GetInterfaceRegistry() = 0; |
189 | 191 |
190 // Returns the InterfaceProvider that this process can use to bind | 192 // Returns the InterfaceProvider that this process can use to bind |
191 // interfaces exposed to it by the application running in this frame. | 193 // interfaces exposed to it by the application running in this frame. |
192 virtual shell::InterfaceProvider* GetRemoteInterfaces() = 0; | 194 virtual shell::InterfaceProvider* GetRemoteInterfaces() = 0; |
193 | 195 |
| 196 // Returns the AssociatedInterfaceRegistry for this frame. This can be used |
| 197 // to add frame-specific Channel-associated interfaces to this frame. |
| 198 virtual AssociatedInterfaceRegistry* GetAssociatedInterfaceRegistry() = 0; |
| 199 |
| 200 // Returns the AssociatedInterfaceProvider that this process can use to access |
| 201 // remote frame-specific Channel-associated interfaces for this frame. |
| 202 virtual AssociatedInterfaceProvider* GetRemoteAssociatedInterfaces() = 0; |
| 203 |
194 // Returns the visibility state of the frame. The different visibility states | 204 // Returns the visibility state of the frame. The different visibility states |
195 // of a frame are defined in Blink. | 205 // of a frame are defined in Blink. |
196 virtual blink::WebPageVisibilityState GetVisibilityState() = 0; | 206 virtual blink::WebPageVisibilityState GetVisibilityState() = 0; |
197 | 207 |
198 // Returns whether the RenderFrame in the renderer process has been created | 208 // Returns whether the RenderFrame in the renderer process has been created |
199 // and still has a connection. This is valid for all frames. | 209 // and still has a connection. This is valid for all frames. |
200 virtual bool IsRenderFrameLive() = 0; | 210 virtual bool IsRenderFrameLive() = 0; |
201 | 211 |
202 // Get the number of proxies to this frame, in all processes. Exposed for | 212 // Get the number of proxies to this frame, in all processes. Exposed for |
203 // use by resource metrics. | 213 // use by resource metrics. |
(...skipping 16 matching lines...) Expand all Loading... |
220 | 230 |
221 private: | 231 private: |
222 // This interface should only be implemented inside content. | 232 // This interface should only be implemented inside content. |
223 friend class RenderFrameHostImpl; | 233 friend class RenderFrameHostImpl; |
224 RenderFrameHost() {} | 234 RenderFrameHost() {} |
225 }; | 235 }; |
226 | 236 |
227 } // namespace content | 237 } // namespace content |
228 | 238 |
229 #endif // CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ | 239 #endif // CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ |
OLD | NEW |