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_RENDERER_RENDER_FRAME_H_ | 5 #ifndef CONTENT_PUBLIC_RENDERER_RENDER_FRAME_H_ |
6 #define CONTENT_PUBLIC_RENDERER_RENDER_FRAME_H_ | 6 #define CONTENT_PUBLIC_RENDERER_RENDER_FRAME_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 15 matching lines...) Expand all Loading... |
26 class WebURLRequest; | 26 class WebURLRequest; |
27 class WebURLResponse; | 27 class WebURLResponse; |
28 struct WebPluginParams; | 28 struct WebPluginParams; |
29 } | 29 } |
30 | 30 |
31 namespace gfx { | 31 namespace gfx { |
32 class Range; | 32 class Range; |
33 class Size; | 33 class Size; |
34 } | 34 } |
35 | 35 |
| 36 namespace shell { |
| 37 class InterfaceRegistry; |
| 38 class InterfaceProvider; |
| 39 } |
| 40 |
36 namespace url { | 41 namespace url { |
37 class Origin; | 42 class Origin; |
38 } | 43 } |
39 | 44 |
40 namespace v8 { | 45 namespace v8 { |
41 template <typename T> class Local; | 46 template <typename T> class Local; |
42 class Context; | 47 class Context; |
43 class Isolate; | 48 class Isolate; |
44 } | 49 } |
45 | 50 |
46 namespace content { | 51 namespace content { |
47 class ContextMenuClient; | 52 class ContextMenuClient; |
48 class PluginInstanceThrottler; | 53 class PluginInstanceThrottler; |
49 class RenderView; | 54 class RenderView; |
50 class ServiceRegistry; | |
51 struct ContextMenuParams; | 55 struct ContextMenuParams; |
52 struct WebPluginInfo; | 56 struct WebPluginInfo; |
53 struct WebPreferences; | 57 struct WebPreferences; |
54 | 58 |
55 // This interface wraps functionality, which is specific to frames, such as | 59 // This interface wraps functionality, which is specific to frames, such as |
56 // navigation. It provides communication with a corresponding RenderFrameHost | 60 // navigation. It provides communication with a corresponding RenderFrameHost |
57 // in the browser process. | 61 // in the browser process. |
58 class CONTENT_EXPORT RenderFrame : public IPC::Listener, | 62 class CONTENT_EXPORT RenderFrame : public IPC::Listener, |
59 public IPC::Sender { | 63 public IPC::Sender { |
60 public: | 64 public: |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 | 130 |
127 // Execute a string of JavaScript in this frame's context. | 131 // Execute a string of JavaScript in this frame's context. |
128 virtual void ExecuteJavaScript(const base::string16& javascript) = 0; | 132 virtual void ExecuteJavaScript(const base::string16& javascript) = 0; |
129 | 133 |
130 // Returns true if this is the main (top-level) frame. | 134 // Returns true if this is the main (top-level) frame. |
131 virtual bool IsMainFrame() = 0; | 135 virtual bool IsMainFrame() = 0; |
132 | 136 |
133 // Return true if this frame is hidden. | 137 // Return true if this frame is hidden. |
134 virtual bool IsHidden() = 0; | 138 virtual bool IsHidden() = 0; |
135 | 139 |
136 // Returns the ServiceRegistry for this frame. | 140 // Returns the InterfaceRegistry that this process uses to expose interfaces |
137 virtual ServiceRegistry* GetServiceRegistry() = 0; | 141 // to the application running in this frame. |
| 142 virtual shell::InterfaceRegistry* GetInterfaceRegistry() = 0; |
| 143 |
| 144 // Returns the InterfaceProvider that this process can use to bind |
| 145 // interfaces exposed to it by the application running in this frame. |
| 146 virtual shell::InterfaceProvider* GetRemoteInterfaces() = 0; |
138 | 147 |
139 #if defined(ENABLE_PLUGINS) | 148 #if defined(ENABLE_PLUGINS) |
140 // Registers a plugin that has been marked peripheral. If the origin | 149 // Registers a plugin that has been marked peripheral. If the origin |
141 // whitelist is later updated and includes |content_origin|, then | 150 // whitelist is later updated and includes |content_origin|, then |
142 // |unthrottle_callback| will be called. | 151 // |unthrottle_callback| will be called. |
143 virtual void RegisterPeripheralPlugin( | 152 virtual void RegisterPeripheralPlugin( |
144 const url::Origin& content_origin, | 153 const url::Origin& content_origin, |
145 const base::Closure& unthrottle_callback) = 0; | 154 const base::Closure& unthrottle_callback) = 0; |
146 | 155 |
147 // Returns the peripheral content heuristic decision. | 156 // Returns the peripheral content heuristic decision. |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
206 | 215 |
207 private: | 216 private: |
208 // This interface should only be implemented inside content. | 217 // This interface should only be implemented inside content. |
209 friend class RenderFrameImpl; | 218 friend class RenderFrameImpl; |
210 RenderFrame() {} | 219 RenderFrame() {} |
211 }; | 220 }; |
212 | 221 |
213 } // namespace content | 222 } // namespace content |
214 | 223 |
215 #endif // CONTENT_PUBLIC_RENDERER_RENDER_FRAME_H_ | 224 #endif // CONTENT_PUBLIC_RENDERER_RENDER_FRAME_H_ |
OLD | NEW |