| 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 WEBKIT_PLUGINS_PPAPI_PLUGIN_DELEGATE_H_ | 5 #ifndef WEBKIT_PLUGINS_PPAPI_PLUGIN_DELEGATE_H_ |
| 6 #define WEBKIT_PLUGINS_PPAPI_PLUGIN_DELEGATE_H_ | 6 #define WEBKIT_PLUGINS_PPAPI_PLUGIN_DELEGATE_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 65 struct HostPortPair; | 65 struct HostPortPair; |
| 66 struct Preferences; | 66 struct Preferences; |
| 67 | 67 |
| 68 namespace thunk { | 68 namespace thunk { |
| 69 class ResourceCreationAPI; | 69 class ResourceCreationAPI; |
| 70 } | 70 } |
| 71 | 71 |
| 72 } // namespace ppapi | 72 } // namespace ppapi |
| 73 | 73 |
| 74 namespace WebKit { | 74 namespace WebKit { |
| 75 typedef SkCanvas WebCanvas; |
| 75 class WebGamepads; | 76 class WebGamepads; |
| 76 class WebPlugin; | 77 class WebPlugin; |
| 77 struct WebCompositionUnderline; | 78 struct WebCompositionUnderline; |
| 78 struct WebCursorInfo; | 79 struct WebCursorInfo; |
| 79 } | 80 } |
| 80 | 81 |
| 81 namespace webkit_glue { | 82 namespace webkit_glue { |
| 82 class ClipboardClient; | 83 class ClipboardClient; |
| 83 class P2PTransport; | 84 class P2PTransport; |
| 84 class NetworkListObserver; | 85 class NetworkListObserver; |
| 85 } // namespace webkit_glue | 86 } // namespace webkit_glue |
| 86 | 87 |
| 87 namespace webkit { | 88 namespace webkit { |
| 88 namespace ppapi { | 89 namespace ppapi { |
| 89 | 90 |
| 90 class FileIO; | 91 class FileIO; |
| 91 class FullscreenContainer; | 92 class FullscreenContainer; |
| 92 class PluginInstance; | 93 class PluginInstance; |
| 93 class PluginModule; | 94 class PluginModule; |
| 94 class PPB_Broker_Impl; | 95 class PPB_Broker_Impl; |
| 96 class PPB_Flash_Menu_Impl; |
| 97 class PPB_ImageData_Impl; |
| 95 class PPB_TCPSocket_Private_Impl; | 98 class PPB_TCPSocket_Private_Impl; |
| 96 class PPB_UDPSocket_Private_Impl; | 99 class PPB_UDPSocket_Private_Impl; |
| 97 | 100 |
| 98 // Virtual interface that the browser implements to implement features for | 101 // Virtual interface that the browser implements to implement features for |
| 99 // PPAPI plugins. | 102 // PPAPI plugins. |
| 100 class PluginDelegate { | 103 class PluginDelegate { |
| 101 public: | 104 public: |
| 102 // This interface is used for the PluginModule to tell the code in charge of | 105 // This interface is used for the PluginModule to tell the code in charge of |
| 103 // re-using modules which modules currently exist. | 106 // re-using modules which modules currently exist. |
| 104 // | 107 // |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 160 | 163 |
| 161 // Returns the platform-specific shared memory handle of the data backing | 164 // Returns the platform-specific shared memory handle of the data backing |
| 162 // this image. This is used by PPAPI proxying to send the image to the | 165 // this image. This is used by PPAPI proxying to send the image to the |
| 163 // out-of-process plugin. On success, the size in bytes will be placed into | 166 // out-of-process plugin. On success, the size in bytes will be placed into |
| 164 // |*bytes_count|. Returns 0 on failure. | 167 // |*bytes_count|. Returns 0 on failure. |
| 165 virtual intptr_t GetSharedMemoryHandle(uint32* byte_count) const = 0; | 168 virtual intptr_t GetSharedMemoryHandle(uint32* byte_count) const = 0; |
| 166 | 169 |
| 167 virtual TransportDIB* GetTransportDIB() const = 0; | 170 virtual TransportDIB* GetTransportDIB() const = 0; |
| 168 }; | 171 }; |
| 169 | 172 |
| 173 class PlatformGraphics2D { |
| 174 public: |
| 175 virtual bool ReadImageData(PP_Resource image, const PP_Point* top_left) = 0; |
| 176 |
| 177 // Assciates this device with the given plugin instance. You can pass NULL |
| 178 // to clear the existing device. Returns true on success. In this case, a |
| 179 // repaint of the page will also be scheduled. Failure means that the device |
| 180 // is already bound to a different instance, and nothing will happen. |
| 181 virtual bool BindToInstance(PluginInstance* new_instance) = 0; |
| 182 |
| 183 // Paints the current backing store to the web page. |
| 184 virtual void Paint(WebKit::WebCanvas* canvas, |
| 185 const gfx::Rect& plugin_rect, |
| 186 const gfx::Rect& paint_rect) = 0; |
| 187 |
| 188 // Notifications about the view's progress painting. See PluginInstance. |
| 189 // These messages are used to send Flush callbacks to the plugin. |
| 190 virtual void ViewWillInitiatePaint() = 0; |
| 191 virtual void ViewInitiatedPaint() = 0; |
| 192 virtual void ViewFlushedPaint() = 0; |
| 193 |
| 194 virtual bool IsAlwaysOpaque() const = 0; |
| 195 virtual void SetScale(float scale) = 0; |
| 196 virtual float GetScale() const = 0; |
| 197 virtual PPB_ImageData_Impl* ImageData() = 0; |
| 198 }; |
| 199 |
| 170 class PlatformContext3D { | 200 class PlatformContext3D { |
| 171 public: | 201 public: |
| 172 virtual ~PlatformContext3D() {} | 202 virtual ~PlatformContext3D() {} |
| 173 | 203 |
| 174 // Initialize the context. | 204 // Initialize the context. |
| 175 virtual bool Init(const int32* attrib_list, | 205 virtual bool Init(const int32* attrib_list, |
| 176 PlatformContext3D* share_context) = 0; | 206 PlatformContext3D* share_context) = 0; |
| 177 | 207 |
| 178 // If the plugin instance is backed by an OpenGL, return its ID in the | 208 // If the plugin instance is backed by an OpenGL, return its ID in the |
| 179 // compositors namespace. Otherwise return 0. Returns 0 by default. | 209 // compositors namespace. Otherwise return 0. Returns 0 by default. |
| (...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 351 virtual SkBitmap* GetSadPluginBitmap() = 0; | 381 virtual SkBitmap* GetSadPluginBitmap() = 0; |
| 352 | 382 |
| 353 // Creates a replacement plug-in that is shown when the plug-in at |file_path| | 383 // Creates a replacement plug-in that is shown when the plug-in at |file_path| |
| 354 // couldn't be loaded. | 384 // couldn't be loaded. |
| 355 virtual WebKit::WebPlugin* CreatePluginReplacement( | 385 virtual WebKit::WebPlugin* CreatePluginReplacement( |
| 356 const FilePath& file_path) = 0; | 386 const FilePath& file_path) = 0; |
| 357 | 387 |
| 358 // The caller will own the pointer returned from this. | 388 // The caller will own the pointer returned from this. |
| 359 virtual PlatformImage2D* CreateImage2D(int width, int height) = 0; | 389 virtual PlatformImage2D* CreateImage2D(int width, int height) = 0; |
| 360 | 390 |
| 391 // Returns the internal PlatformGraphics2D implementation. |
| 392 virtual PlatformGraphics2D* GetGraphics2D(PluginInstance* instance, |
| 393 PP_Resource graphics_2d) = 0; |
| 394 |
| 361 // The caller will own the pointer returned from this. | 395 // The caller will own the pointer returned from this. |
| 362 virtual PlatformContext3D* CreateContext3D() = 0; | 396 virtual PlatformContext3D* CreateContext3D() = 0; |
| 363 | 397 |
| 364 // Set that the context will now present to the delegate. | 398 // Set that the context will now present to the delegate. |
| 365 virtual void ReparentContext(PlatformContext3D*) = 0; | 399 virtual void ReparentContext(PlatformContext3D*) = 0; |
| 366 | 400 |
| 367 // If |device_id| is empty, the default video capture device will be used. The | 401 // If |device_id| is empty, the default video capture device will be used. The |
| 368 // user can start using the returned object to capture video right away. | 402 // user can start using the returned object to capture video right away. |
| 369 // Otherwise, the specified device will be used. The user needs to wait till | 403 // Otherwise, the specified device will be used. The user needs to wait till |
| 370 // |handler| gets an OnInitialized() notification to start using the returned | 404 // |handler| gets an OnInitialized() notification to start using the returned |
| (...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 664 // Returns restrictions on local data handled by the plug-in. | 698 // Returns restrictions on local data handled by the plug-in. |
| 665 virtual PP_FlashLSORestrictions GetLocalDataRestrictions( | 699 virtual PP_FlashLSORestrictions GetLocalDataRestrictions( |
| 666 const GURL& document_url, | 700 const GURL& document_url, |
| 667 const GURL& plugin_url) = 0; | 701 const GURL& plugin_url) = 0; |
| 668 }; | 702 }; |
| 669 | 703 |
| 670 } // namespace ppapi | 704 } // namespace ppapi |
| 671 } // namespace webkit | 705 } // namespace webkit |
| 672 | 706 |
| 673 #endif // WEBKIT_PLUGINS_PPAPI_PLUGIN_DELEGATE_H_ | 707 #endif // WEBKIT_PLUGINS_PPAPI_PLUGIN_DELEGATE_H_ |
| OLD | NEW |