| 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 2779a1213dee3b6b24be4cfc6f627e7bf3a1b980..7e10800b868239033f302630be47d769b671c3f7 100644
|
| --- a/cc/surfaces/compositor_frame_sink_support.h
|
| +++ b/cc/surfaces/compositor_frame_sink_support.h
|
| @@ -30,7 +30,9 @@ class CC_SURFACES_EXPORT CompositorFrameSinkSupport
|
| CompositorFrameSinkSupport(CompositorFrameSinkSupportClient* client,
|
| SurfaceManager* surface_manager,
|
| const FrameSinkId& frame_sink_id,
|
| - bool submits_to_display_compositor);
|
| + bool is_root,
|
| + bool handles_frame_sink_id_invalidation,
|
| + bool needs_sync_points);
|
|
|
| ~CompositorFrameSinkSupport() override;
|
|
|
| @@ -115,7 +117,19 @@ class CC_SURFACES_EXPORT CompositorFrameSinkSupport
|
| // The set of BeginFrame children of this CompositorFrameSink.
|
| std::unordered_set<FrameSinkId, FrameSinkIdHash> child_frame_sinks_;
|
|
|
| - const bool submits_to_display_compositor_;
|
| + const bool is_root_;
|
| +
|
| + // TODO(staraz): Remove this flag once ui::Compositor no longer needs to call
|
| + // RegisterFrameSinkId().
|
| + // A surfaceSequence's validity is bound to the lifetime of the parent
|
| + // FrameSink that created it. We track the lifetime of FrameSinks through
|
| + // RegisterFrameSinkId and InvalidateFrameSinkId. During startup and GPU
|
| + // restart, a SurfaceSequence created by the top most layer compositor may be
|
| + // used prior to the creation of the associated CompositorFrameSinkSupport.
|
| + // CompositorFrameSinkSupport is created asynchronously when a new GPU channel
|
| + // is established. Once we switch to SurfaceReferences, this ordering concern
|
| + // goes away and we can remove this bool.
|
| + const bool handles_frame_sink_id_invalidation_;
|
|
|
| base::WeakPtrFactory<CompositorFrameSinkSupport> weak_factory_;
|
|
|
|
|