Chromium Code Reviews| Index: cc/surfaces/compositor_frame_sink_support.h |
| diff --git a/cc/surfaces/compositor_frame_sink_support.h b/cc/surfaces/compositor_frame_sink_support.h |
| index 8471bbd15c6b186b1c4678f6f64a7246ab41fd18..5181bfdb42c1f0fa537b2aa4701c64ec96787588 100644 |
| --- a/cc/surfaces/compositor_frame_sink_support.h |
| +++ b/cc/surfaces/compositor_frame_sink_support.h |
| @@ -26,12 +26,15 @@ class CC_SURFACES_EXPORT CompositorFrameSinkSupport |
| public SurfaceFactoryClient, |
| public BeginFrameObserver { |
| public: |
| - CompositorFrameSinkSupport( |
| - CompositorFrameSinkSupportClient* client, |
| - SurfaceManager* surface_manager, |
| - const FrameSinkId& frame_sink_id, |
| - std::unique_ptr<Display> display, |
| - std::unique_ptr<BeginFrameSource> display_begin_frame_source); |
| + // |display| is nullptr if the CompositorFrameSinkSupport submits |
| + // CompositorFrames to a buffer instead of a DisplayCompositor. |
|
danakj
2017/02/03 18:48:43
buffer => offscreen texture/bitmap
Alex Z.
2017/02/03 19:46:37
Done.
|
| + // e.g. OffscreenCanvasCompositorFrameSink and |
| + // GpuOffscreenCompositorframeSink. |
|
danakj
2017/02/03 18:48:43
Frame
Alex Z.
2017/02/03 19:46:37
Done.
|
| + CompositorFrameSinkSupport(CompositorFrameSinkSupportClient* client, |
| + SurfaceManager* surface_manager, |
| + const FrameSinkId& frame_sink_id, |
| + Display* display, |
| + bool needs_sync_points = true); |
| ~CompositorFrameSinkSupport() override; |
| @@ -46,8 +49,9 @@ class CC_SURFACES_EXPORT CompositorFrameSinkSupport |
| void Satisfy(const SurfaceSequence& sequence); |
| void AddChildFrameSink(const FrameSinkId& child_frame_sink_id); |
| void RemoveChildFrameSink(const FrameSinkId& child_frame_sink_id); |
| + void ForceReclaimResources(); |
| - Display* display() { return display_.get(); } |
| + Display* display() { return display_; } |
| private: |
| void DidReceiveCompositorFrameAck(); |
| @@ -74,14 +78,8 @@ class CC_SURFACES_EXPORT CompositorFrameSinkSupport |
| CompositorFrameSinkSupportClient* const client_; |
| SurfaceManager* const surface_manager_; |
| - |
| const FrameSinkId frame_sink_id_; |
| - |
| - // GpuCompositorFrameSink holds a Display and its BeginFrameSource if it |
| - // created with non-null gpu::SurfaceHandle. In the window server, the display |
| - // root window's CompositorFrameSink will have a valid gpu::SurfaceHandle. |
| - std::unique_ptr<BeginFrameSource> display_begin_frame_source_; |
| - std::unique_ptr<Display> display_; |
| + Display* const display_; |
| SurfaceFactory surface_factory_; |
| // Counts the number of CompositorFrames that have been submitted and have not |