Chromium Code Reviews| Index: services/ui/public/cpp/window_surface.h |
| diff --git a/services/ui/public/cpp/window_surface.h b/services/ui/public/cpp/window_surface.h |
| index e06d13f92091ba032c313dc221cb13eb47b62772..6d40bfaeaffeafa471ba87f2ced26b800be6c9ba 100644 |
| --- a/services/ui/public/cpp/window_surface.h |
| +++ b/services/ui/public/cpp/window_surface.h |
| @@ -11,19 +11,20 @@ |
| #include "base/macros.h" |
| #include "base/observer_list.h" |
| #include "base/threading/thread_checker.h" |
| +#include "cc/ipc/mojo_compositor_frame_sink.mojom.h" |
| #include "mojo/public/cpp/bindings/binding.h" |
| #include "mojo/public/cpp/bindings/interface_ptr_info.h" |
| -#include "services/ui/public/interfaces/surface.mojom.h" |
| +#include "services/ui/public/cpp/window_surface_client.h" |
| namespace ui { |
| class WindowSurfaceBinding; |
| -class WindowSurfaceClient; |
| +class WindowMojoCompositorFrameSinkClient; |
| class Window; |
| // A WindowSurface is wrapper to simplify submitting CompositorFrames to |
| // Windows, and receiving ReturnedResources. |
| -class WindowSurface : public mojom::SurfaceClient { |
| +class WindowSurface : public cc::mojom::MojoCompositorFrameSinkClient { |
| public: |
| // static |
| static std::unique_ptr<WindowSurface> Create( |
| @@ -35,25 +36,29 @@ class WindowSurface : public mojom::SurfaceClient { |
| // object. |
| void BindToThread(); |
| - void SubmitCompositorFrame(cc::CompositorFrame frame, |
| - const base::Closure& callback); |
| + void SubmitCompositorFrame(cc::CompositorFrame frame); |
| void set_client(WindowSurfaceClient* client) { client_ = client; } |
| private: |
| friend class Window; |
| - WindowSurface(mojo::InterfacePtrInfo<mojom::Surface> surface_info, |
| - mojo::InterfaceRequest<mojom::SurfaceClient> client_request); |
| + WindowSurface( |
| + mojo::InterfacePtrInfo<cc::mojom::MojoCompositorFrameSink> surface_info, |
|
rjkroege
2016/10/20 21:33:18
how about a using to make these types less ridicul
Fady Samuel
2016/10/20 23:04:10
Apparently mojo autogenerates one for you. I'll do
|
| + mojo::InterfaceRequest<cc::mojom::MojoCompositorFrameSinkClient> |
| + client_request); |
| - // SurfaceClient implementation: |
| - void ReturnResources(const cc::ReturnedResourceArray& resources) override; |
| + // MojoCompositorFrameSinkClient implementation: |
| + void DidReceiveCompositorFrameAck() override; |
| + void ReclaimResources(const cc::ReturnedResourceArray& resources) override; |
| WindowSurfaceClient* client_; |
| - mojo::InterfacePtrInfo<mojom::Surface> surface_info_; |
| - mojo::InterfaceRequest<mojom::SurfaceClient> client_request_; |
| - mojom::SurfacePtr surface_; |
| - std::unique_ptr<mojo::Binding<mojom::SurfaceClient>> client_binding_; |
| + mojo::InterfacePtrInfo<cc::mojom::MojoCompositorFrameSink> surface_info_; |
| + mojo::InterfaceRequest<cc::mojom::MojoCompositorFrameSinkClient> |
| + client_request_; |
| + cc::mojom::MojoCompositorFrameSinkPtr surface_; |
| + std::unique_ptr<mojo::Binding<cc::mojom::MojoCompositorFrameSinkClient>> |
| + client_binding_; |
| std::unique_ptr<base::ThreadChecker> thread_checker_; |
| DISALLOW_COPY_AND_ASSIGN(WindowSurface); |
| @@ -71,11 +76,14 @@ class WindowSurfaceBinding { |
| friend class Window; |
| WindowSurfaceBinding( |
| - mojo::InterfaceRequest<mojom::Surface> surface_request, |
| - mojo::InterfacePtrInfo<mojom::SurfaceClient> surface_client); |
| - |
| - mojo::InterfaceRequest<mojom::Surface> surface_request_; |
| - mojo::InterfacePtrInfo<mojom::SurfaceClient> surface_client_; |
| + mojo::InterfaceRequest<cc::mojom::MojoCompositorFrameSink> |
| + surface_request, |
| + mojo::InterfacePtrInfo<cc::mojom::MojoCompositorFrameSinkClient> |
| + surface_client); |
| + |
| + mojo::InterfaceRequest<cc::mojom::MojoCompositorFrameSink> surface_request_; |
| + mojo::InterfacePtrInfo<cc::mojom::MojoCompositorFrameSinkClient> |
| + surface_client_; |
| DISALLOW_COPY_AND_ASSIGN(WindowSurfaceBinding); |
| }; |