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 CONTENT_PUBLIC_BROWSER_RENDER_VIEW_HOST_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_RENDER_VIEW_HOST_H_ |
6 #define CONTENT_PUBLIC_BROWSER_RENDER_VIEW_HOST_H_ | 6 #define CONTENT_PUBLIC_BROWSER_RENDER_VIEW_HOST_H_ |
7 | 7 |
8 #include "base/callback_forward.h" | 8 #include "base/callback_forward.h" |
| 9 #include "base/files/file_path.h" |
9 #include "build/build_config.h" | 10 #include "build/build_config.h" |
10 #include "content/common/content_export.h" | 11 #include "content/common/content_export.h" |
11 #include "content/public/common/file_chooser_params.h" | |
12 #include "content/public/common/page_zoom.h" | 12 #include "content/public/common/page_zoom.h" |
13 #include "ipc/ipc_sender.h" | 13 #include "ipc/ipc_sender.h" |
14 #include "mojo/public/cpp/system/core.h" | 14 #include "mojo/public/cpp/system/core.h" |
15 #include "third_party/WebKit/public/platform/WebDragOperation.h" | 15 #include "third_party/WebKit/public/platform/WebDragOperation.h" |
16 | 16 |
17 class GURL; | 17 class GURL; |
18 | 18 |
19 namespace base { | 19 namespace base { |
20 class FilePath; | 20 class FilePath; |
21 class Value; | 21 class Value; |
(...skipping 12 matching lines...) Expand all Loading... |
34 namespace content { | 34 namespace content { |
35 | 35 |
36 class ChildProcessSecurityPolicy; | 36 class ChildProcessSecurityPolicy; |
37 class RenderFrameHost; | 37 class RenderFrameHost; |
38 class RenderProcessHost; | 38 class RenderProcessHost; |
39 class RenderViewHostDelegate; | 39 class RenderViewHostDelegate; |
40 class RenderWidgetHost; | 40 class RenderWidgetHost; |
41 class SessionStorageNamespace; | 41 class SessionStorageNamespace; |
42 class SiteInstance; | 42 class SiteInstance; |
43 struct DropData; | 43 struct DropData; |
44 struct FileChooserFileInfo; | |
45 struct WebPreferences; | 44 struct WebPreferences; |
46 | 45 |
47 // A RenderViewHost is responsible for creating and talking to a RenderView | 46 // A RenderViewHost is responsible for creating and talking to a RenderView |
48 // object in a child process. It exposes a high level API to users, for things | 47 // object in a child process. It exposes a high level API to users, for things |
49 // like loading pages, adjusting the display and other browser functionality, | 48 // like loading pages, adjusting the display and other browser functionality, |
50 // which it translates into IPC messages sent over the IPC channel with the | 49 // which it translates into IPC messages sent over the IPC channel with the |
51 // RenderView. It responds to all IPC messages sent by that RenderView and | 50 // RenderView. It responds to all IPC messages sent by that RenderView and |
52 // cracks them, calling a delegate object back with higher level types where | 51 // cracks them, calling a delegate object back with higher level types where |
53 // possible. | 52 // possible. |
54 // | 53 // |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
161 // located at the given point. | 160 // located at the given point. |
162 virtual void ExecuteMediaPlayerActionAtLocation( | 161 virtual void ExecuteMediaPlayerActionAtLocation( |
163 const gfx::Point& location, | 162 const gfx::Point& location, |
164 const blink::WebMediaPlayerAction& action) = 0; | 163 const blink::WebMediaPlayerAction& action) = 0; |
165 | 164 |
166 // Tells the renderer to perform the given action on the plugin located at | 165 // Tells the renderer to perform the given action on the plugin located at |
167 // the given point. | 166 // the given point. |
168 virtual void ExecutePluginActionAtLocation( | 167 virtual void ExecutePluginActionAtLocation( |
169 const gfx::Point& location, const blink::WebPluginAction& action) = 0; | 168 const gfx::Point& location, const blink::WebPluginAction& action) = 0; |
170 | 169 |
171 // Notifies the Listener that one or more files have been chosen by the user | |
172 // from a file chooser dialog for the form. |permissions| is the file | |
173 // selection mode in which the chooser dialog was created. | |
174 virtual void FilesSelectedInChooser( | |
175 const std::vector<content::FileChooserFileInfo>& files, | |
176 FileChooserParams::Mode permissions) = 0; | |
177 | |
178 virtual RenderViewHostDelegate* GetDelegate() const = 0; | 170 virtual RenderViewHostDelegate* GetDelegate() const = 0; |
179 | 171 |
180 // Returns a bitwise OR of bindings types that have been enabled for this | 172 // Returns a bitwise OR of bindings types that have been enabled for this |
181 // RenderView. See BindingsPolicy for details. | 173 // RenderView. See BindingsPolicy for details. |
182 virtual int GetEnabledBindings() const = 0; | 174 virtual int GetEnabledBindings() const = 0; |
183 | 175 |
184 virtual SiteInstance* GetSiteInstance() const = 0; | 176 virtual SiteInstance* GetSiteInstance() const = 0; |
185 | 177 |
186 // Returns true if the RenderView is active and has not crashed. | 178 // Returns true if the RenderView is active and has not crashed. |
187 virtual bool IsRenderViewLive() const = 0; | 179 virtual bool IsRenderViewLive() const = 0; |
(...skipping 30 matching lines...) Expand all Loading... |
218 | 210 |
219 private: | 211 private: |
220 // This interface should only be implemented inside content. | 212 // This interface should only be implemented inside content. |
221 friend class RenderViewHostImpl; | 213 friend class RenderViewHostImpl; |
222 RenderViewHost() {} | 214 RenderViewHost() {} |
223 }; | 215 }; |
224 | 216 |
225 } // namespace content | 217 } // namespace content |
226 | 218 |
227 #endif // CONTENT_PUBLIC_BROWSER_RENDER_VIEW_HOST_H_ | 219 #endif // CONTENT_PUBLIC_BROWSER_RENDER_VIEW_HOST_H_ |
OLD | NEW |