| Index: content/common/gpu/image_transport_surface_iosurface_mac.h
|
| diff --git a/content/common/gpu/image_transport_surface_iosurface_mac.h b/content/common/gpu/image_transport_surface_iosurface_mac.h
|
| index 5470ce3a4d371f2d3b6f757404554adf6543fa45..df6954dea4ae71499ba24fbc567bfcbdd68dc44d 100644
|
| --- a/content/common/gpu/image_transport_surface_iosurface_mac.h
|
| +++ b/content/common/gpu/image_transport_surface_iosurface_mac.h
|
| @@ -5,6 +5,8 @@
|
| #ifndef CONTENT_COMMON_GPU_IMAGE_TRANSPORT_SURFACE_IOSURFACE_MAC_H_
|
| #define CONTENT_COMMON_GPU_IMAGE_TRANSPORT_SURFACE_IOSURFACE_MAC_H_
|
|
|
| +#include <list>
|
| +
|
| #include "content/common/gpu/image_transport_surface_fbo_mac.h"
|
| #include "ui/gl/gl_bindings.h"
|
|
|
| @@ -17,7 +19,7 @@ namespace content {
|
| class IOSurfaceStorageProvider
|
| : public ImageTransportSurfaceFBO::StorageProvider {
|
| public:
|
| - IOSurfaceStorageProvider();
|
| + IOSurfaceStorageProvider(ImageTransportSurfaceFBO* transport_surface);
|
| virtual ~IOSurfaceStorageProvider();
|
|
|
| // ImageTransportSurfaceFBO::StorageProvider implementation:
|
| @@ -28,10 +30,18 @@ class IOSurfaceStorageProvider
|
| virtual void FreeColorBufferStorage() OVERRIDE;
|
| virtual uint64 GetSurfaceHandle() const OVERRIDE;
|
| virtual void WillSwapBuffers() OVERRIDE;
|
| + virtual void CanFreeSwappedBuffer() OVERRIDE;
|
|
|
| private:
|
| + ImageTransportSurfaceFBO* transport_surface_;
|
| +
|
| base::ScopedCFTypeRef<IOSurfaceRef> io_surface_;
|
|
|
| + // The list of IOSurfaces that have been sent to the browser process but have
|
| + // not been opened in the browser process yet. This list should never have
|
| + // more than one entry.
|
| + std::list<base::ScopedCFTypeRef<IOSurfaceRef>> pending_swapped_surfaces_;
|
| +
|
| // The id of |io_surface_| or 0 if that's NULL.
|
| IOSurfaceID io_surface_id_;
|
|
|
|
|