| Index: content/renderer/browser_plugin/browser_plugin_compositing_helper.h
|
| diff --git a/content/renderer/browser_plugin/browser_plugin_compositing_helper.h b/content/renderer/browser_plugin/browser_plugin_compositing_helper.h
|
| index 5fd695d617ca6925c5d2ee4d422803141f62845b..2078cb767a6556001f2fa1ab49aee07ee051eb26 100644
|
| --- a/content/renderer/browser_plugin/browser_plugin_compositing_helper.h
|
| +++ b/content/renderer/browser_plugin/browser_plugin_compositing_helper.h
|
| @@ -23,24 +23,36 @@ class WebLayer;
|
|
|
| namespace content {
|
|
|
| -class CONTENT_EXPORT BrowserPluginCompositingHelper {
|
| +class BrowserPluginManager;
|
| +
|
| +class CONTENT_EXPORT BrowserPluginCompositingHelper :
|
| + public base::RefCounted<BrowserPluginCompositingHelper> {
|
| public:
|
| BrowserPluginCompositingHelper(WebKit::WebPluginContainer* container,
|
| + BrowserPluginManager* manager,
|
| int host_routing_id);
|
| - ~BrowserPluginCompositingHelper();
|
| -
|
| void EnableCompositing(bool);
|
| + void OnContainerDestroy();
|
| void OnBuffersSwapped(const gfx::Size& size,
|
| const std::string& mailbox_name,
|
| int gpu_route_id,
|
| int gpu_host_id);
|
| void SetContainerSize(const gfx::Size&);
|
| -
|
| + protected:
|
| + // Friend RefCounted so that the dtor can be non-public.
|
| + friend class base::RefCounted<BrowserPluginCompositingHelper>;
|
| private:
|
| + ~BrowserPluginCompositingHelper();
|
| + void FreeMailboxMemory(const std::string& mailbox_name);
|
| + void MailboxReleased(const std::string& mailbox_name,
|
| + int gpu_route_id,
|
| + int gpu_host_id,
|
| + unsigned sync_point);
|
| void UpdateUVRect();
|
|
|
| int host_routing_id_;
|
| bool last_mailbox_valid_;
|
| + bool ack_pending_;
|
|
|
| gfx::Size buffer_size_;
|
| gfx::Size container_size_;
|
| @@ -48,6 +60,8 @@ class CONTENT_EXPORT BrowserPluginCompositingHelper {
|
| scoped_refptr<cc::TextureLayer> texture_layer_;
|
| scoped_ptr<WebKit::WebLayer> web_layer_;
|
| WebKit::WebPluginContainer* container_;
|
| +
|
| + scoped_refptr<BrowserPluginManager> browser_plugin_manager_;
|
| };
|
|
|
| } // namespace content
|
|
|