Index: mojo/cc/output_surface_mojo.h |
diff --git a/mojo/cc/output_surface_mojo.h b/mojo/cc/output_surface_mojo.h |
index fbde9315a3e7ac46f594201f197e57380706fe81..f5b98aec9939b999f4f744b880d9c24aa8697798 100644 |
--- a/mojo/cc/output_surface_mojo.h |
+++ b/mojo/cc/output_surface_mojo.h |
@@ -12,12 +12,19 @@ |
namespace mojo { |
+class OutputSurfaceMojoClient { |
+ public: |
+ virtual ~OutputSurfaceMojoClient() {} |
+ |
+ virtual void DidCreateSurface(cc::SurfaceId id) = 0; |
+}; |
+ |
class OutputSurfaceMojo : public cc::OutputSurface, public SurfaceClient { |
public: |
- OutputSurfaceMojo(const scoped_refptr<cc::ContextProvider>& context_provider, |
+ OutputSurfaceMojo(OutputSurfaceMojoClient* client, |
+ const scoped_refptr<cc::ContextProvider>& context_provider, |
SurfacePtr surface, |
uint32_t id_namespace); |
- virtual ~OutputSurfaceMojo(); |
// SurfaceClient implementation. |
virtual void ReturnResources(Array<ReturnedResourcePtr> resources) OVERRIDE; |
@@ -25,7 +32,11 @@ class OutputSurfaceMojo : public cc::OutputSurface, public SurfaceClient { |
// cc::OutputSurface implementation. |
virtual void SwapBuffers(cc::CompositorFrame* frame) OVERRIDE; |
+ protected: |
+ virtual ~OutputSurfaceMojo(); |
+ |
private: |
+ OutputSurfaceMojoClient* output_surface_mojo_client_; |
SurfacePtr surface_; |
cc::SurfaceIdAllocator id_allocator_; |
cc::SurfaceId surface_id_; |