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" |
(...skipping 28 matching lines...) Expand all Loading... |
39 } | 39 } |
40 | 40 |
41 struct PP_VideoCompressedDataBuffer_Dev; | 41 struct PP_VideoCompressedDataBuffer_Dev; |
42 struct PP_VideoDecoderConfig_Dev; | 42 struct PP_VideoDecoderConfig_Dev; |
43 struct PP_VideoUncompressedDataBuffer_Dev; | 43 struct PP_VideoUncompressedDataBuffer_Dev; |
44 | 44 |
45 namespace pepper { | 45 namespace pepper { |
46 | 46 |
47 class FileIO; | 47 class FileIO; |
48 class PluginInstance; | 48 class PluginInstance; |
| 49 class FullscreenContainer; |
49 | 50 |
50 // Virtual interface that the browser implements to implement features for | 51 // Virtual interface that the browser implements to implement features for |
51 // Pepper plugins. | 52 // Pepper plugins. |
52 class PluginDelegate { | 53 class PluginDelegate { |
53 public: | 54 public: |
54 // Represents an image. This is to allow the browser layer to supply a correct | 55 // Represents an image. This is to allow the browser layer to supply a correct |
55 // image representation. In Chrome, this will be a TransportDIB. | 56 // image representation. In Chrome, this will be a TransportDIB. |
56 class PlatformImage2D { | 57 class PlatformImage2D { |
57 public: | 58 public: |
58 virtual ~PlatformImage2D() {} | 59 virtual ~PlatformImage2D() {} |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
159 typedef Callback2<base::PlatformFileError, base::PlatformFile | 160 typedef Callback2<base::PlatformFileError, base::PlatformFile |
160 >::Type AsyncOpenFileCallback; | 161 >::Type AsyncOpenFileCallback; |
161 virtual bool AsyncOpenFile(const FilePath& path, | 162 virtual bool AsyncOpenFile(const FilePath& path, |
162 int flags, | 163 int flags, |
163 AsyncOpenFileCallback* callback) = 0; | 164 AsyncOpenFileCallback* callback) = 0; |
164 | 165 |
165 // Returns a MessageLoopProxy instance associated with the message loop | 166 // Returns a MessageLoopProxy instance associated with the message loop |
166 // of the file thread in this renderer. | 167 // of the file thread in this renderer. |
167 virtual scoped_refptr<base::MessageLoopProxy> | 168 virtual scoped_refptr<base::MessageLoopProxy> |
168 GetFileThreadMessageLoopProxy() = 0; | 169 GetFileThreadMessageLoopProxy() = 0; |
| 170 |
| 171 // Create a fullscreen container for a plugin instance. This effectively |
| 172 // switches the plugin to fullscreen. |
| 173 virtual FullscreenContainer* CreateFullscreenContainer( |
| 174 PluginInstance* instance) = 0; |
169 }; | 175 }; |
170 | 176 |
171 } // namespace pepper | 177 } // namespace pepper |
172 | 178 |
173 #endif // WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_DELEGATE_H_ | 179 #endif // WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_DELEGATE_H_ |
OLD | NEW |