The FrameSinkManagerClient class isn't necessary and it has a number of downsides.
1. FrameSinkManagerImpl already knows about CompositorFrameSinkSupports, which are the only implementation of FrameSinkManagerClient, so FrameSinkManagerImpl has two pointers back to the same object.
2. The virtual SetBeingFrameSource() is the only reason that CompositorFrameSinkSupport::Create() is needed.
3. There is another class with an almost identical name, viz::mojom::FrameSinkManagerClient.
It would be better if this class didn't exist anymore and FrameSinkManagerImpl was cleaned up.
Comment 1 by bugdroid1@chromium.org
, Dec 6 2017