Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(492)

Side by Side Diff: content/public/renderer/render_frame.h

Issue 2079943002: Change RenderFrame to use InterfaceRegistry et al. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@a2
Patch Set: . Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
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_
OLDNEW
« no previous file with comments | « content/public/renderer/content_renderer_client.h ('k') | content/public/renderer/render_thread.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698