OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_DELEGATE_H_ | 5 #ifndef WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_DELEGATE_H_ |
6 #define WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_DELEGATE_H_ | 6 #define WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_DELEGATE_H_ |
7 | 7 |
8 #include "base/callback.h" | 8 #include "base/callback.h" |
9 #include "base/platform_file.h" | 9 #include "base/platform_file.h" |
10 #include "base/ref_counted.h" | 10 #include "base/ref_counted.h" |
11 #include "base/shared_memory.h" | 11 #include "base/shared_memory.h" |
12 #include "base/sync_socket.h" | 12 #include "base/sync_socket.h" |
13 #include "base/task.h" | 13 #include "base/task.h" |
14 #include "third_party/ppapi/c/pp_completion_callback.h" | 14 #include "third_party/ppapi/c/pp_completion_callback.h" |
15 #include "third_party/ppapi/c/pp_errors.h" | 15 #include "third_party/ppapi/c/pp_errors.h" |
16 #include "third_party/ppapi/c/pp_stdint.h" | 16 #include "third_party/ppapi/c/pp_stdint.h" |
17 | 17 |
18 class AudioMessageFilter; | 18 class AudioMessageFilter; |
19 | 19 |
20 namespace base { | 20 namespace base { |
21 class MessageLoopProxy; | 21 class MessageLoopProxy; |
| 22 class Time; |
| 23 } |
| 24 |
| 25 namespace fileapi { |
| 26 class FileSystemCallbackDispatcher; |
22 } | 27 } |
23 | 28 |
24 namespace gfx { | 29 namespace gfx { |
25 class Rect; | 30 class Rect; |
26 } | 31 } |
27 | 32 |
28 namespace gpu { | 33 namespace gpu { |
29 class CommandBuffer; | 34 class CommandBuffer; |
30 } | 35 } |
31 | 36 |
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
156 virtual bool RunFileChooser( | 161 virtual bool RunFileChooser( |
157 const WebKit::WebFileChooserParams& params, | 162 const WebKit::WebFileChooserParams& params, |
158 WebKit::WebFileChooserCompletion* chooser_completion) = 0; | 163 WebKit::WebFileChooserCompletion* chooser_completion) = 0; |
159 | 164 |
160 // Sends an async IPC to open a file. | 165 // Sends an async IPC to open a file. |
161 typedef Callback2<base::PlatformFileError, base::PlatformFile | 166 typedef Callback2<base::PlatformFileError, base::PlatformFile |
162 >::Type AsyncOpenFileCallback; | 167 >::Type AsyncOpenFileCallback; |
163 virtual bool AsyncOpenFile(const FilePath& path, | 168 virtual bool AsyncOpenFile(const FilePath& path, |
164 int flags, | 169 int flags, |
165 AsyncOpenFileCallback* callback) = 0; | 170 AsyncOpenFileCallback* callback) = 0; |
| 171 virtual bool MakeDirectory( |
| 172 const FilePath& path, |
| 173 bool recursive, |
| 174 fileapi::FileSystemCallbackDispatcher* dispatcher) = 0; |
| 175 virtual bool Query(const FilePath& path, |
| 176 fileapi::FileSystemCallbackDispatcher* dispatcher) = 0; |
| 177 virtual bool Touch(const FilePath& path, |
| 178 const base::Time& last_access_time, |
| 179 const base::Time& last_modified_time, |
| 180 fileapi::FileSystemCallbackDispatcher* dispatcher) = 0; |
| 181 virtual bool Delete(const FilePath& path, |
| 182 fileapi::FileSystemCallbackDispatcher* dispatcher) = 0; |
| 183 virtual bool Rename(const FilePath& file_path, |
| 184 const FilePath& new_file_path, |
| 185 fileapi::FileSystemCallbackDispatcher* dispatcher) = 0; |
166 | 186 |
167 // Returns a MessageLoopProxy instance associated with the message loop | 187 // Returns a MessageLoopProxy instance associated with the message loop |
168 // of the file thread in this renderer. | 188 // of the file thread in this renderer. |
169 virtual scoped_refptr<base::MessageLoopProxy> | 189 virtual scoped_refptr<base::MessageLoopProxy> |
170 GetFileThreadMessageLoopProxy() = 0; | 190 GetFileThreadMessageLoopProxy() = 0; |
171 | 191 |
172 // Create a fullscreen container for a plugin instance. This effectively | 192 // Create a fullscreen container for a plugin instance. This effectively |
173 // switches the plugin to fullscreen. | 193 // switches the plugin to fullscreen. |
174 virtual FullscreenContainer* CreateFullscreenContainer( | 194 virtual FullscreenContainer* CreateFullscreenContainer( |
175 PluginInstance* instance) = 0; | 195 PluginInstance* instance) = 0; |
176 }; | 196 }; |
177 | 197 |
178 } // namespace pepper | 198 } // namespace pepper |
179 | 199 |
180 #endif // WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_DELEGATE_H_ | 200 #endif // WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_DELEGATE_H_ |
OLD | NEW |