| Index: webkit/plugins/ppapi/plugin_delegate.h
|
| diff --git a/webkit/plugins/ppapi/plugin_delegate.h b/webkit/plugins/ppapi/plugin_delegate.h
|
| index e65becaed7b7d4d7f0350230f5c7ad7e85e80b23..695e94277614d2ca87f2c24436b4d7aefeddb796 100644
|
| --- a/webkit/plugins/ppapi/plugin_delegate.h
|
| +++ b/webkit/plugins/ppapi/plugin_delegate.h
|
| @@ -74,7 +74,10 @@ namespace skia {
|
| class PlatformCanvas;
|
| }
|
|
|
| +class SkCanvas;
|
| +
|
| namespace WebKit {
|
| +typedef SkCanvas WebCanvas;
|
| class WebGamepads;
|
| class WebPlugin;
|
| struct WebCompositionUnderline;
|
| @@ -96,6 +99,7 @@ class PluginInstance;
|
| class PluginModule;
|
| class PPB_Broker_Impl;
|
| class PPB_Flash_Menu_Impl;
|
| +class PPB_ImageData_Impl;
|
| class PPB_TCPSocket_Private_Impl;
|
| class PPB_UDPSocket_Private_Impl;
|
|
|
| @@ -171,6 +175,32 @@ class PluginDelegate {
|
| virtual TransportDIB* GetTransportDIB() const = 0;
|
| };
|
|
|
| + class PlatformGraphics2D {
|
| + public:
|
| + virtual bool ReadImageData(PP_Resource image, const PP_Point* top_left) = 0;
|
| +
|
| + // Assciates this device with the given plugin instance. You can pass NULL
|
| + // to clear the existing device. Returns true on success. In this case, a
|
| + // repaint of the page will also be scheduled. Failure means that the device
|
| + // is already bound to a different instance, and nothing will happen.
|
| + virtual bool BindToInstance(PluginInstance* new_instance) = 0;
|
| +
|
| + // Paints the current backing store to the web page.
|
| + virtual void Paint(WebKit::WebCanvas* canvas,
|
| + const gfx::Rect& plugin_rect,
|
| + const gfx::Rect& paint_rect) = 0;
|
| +
|
| + // Notifications about the view's progress painting. See PluginInstance.
|
| + // These messages are used to send Flush callbacks to the plugin.
|
| + virtual void ViewWillInitiatePaint() = 0;
|
| + virtual void ViewInitiatedPaint() = 0;
|
| + virtual void ViewFlushedPaint() = 0;
|
| +
|
| + virtual bool IsAlwaysOpaque() const = 0;
|
| + virtual float GetScale() const = 0;
|
| + virtual PPB_ImageData_Impl* ImageData() = 0;
|
| + };
|
| +
|
| class PlatformContext3D {
|
| public:
|
| virtual ~PlatformContext3D() {}
|
| @@ -362,6 +392,10 @@ class PluginDelegate {
|
| // The caller will own the pointer returned from this.
|
| virtual PlatformImage2D* CreateImage2D(int width, int height) = 0;
|
|
|
| + // Returns the internal PlatformGraphics2D implementation.
|
| + virtual PlatformGraphics2D* GetGraphics2D(PluginInstance* instance,
|
| + PP_Resource graphics_2d) = 0;
|
| +
|
| // The caller will own the pointer returned from this.
|
| virtual PlatformContext3D* CreateContext3D() = 0;
|
|
|
|
|