New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 732896 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug

Blocking:
issue 732900
issue 732903



Sign in to add a comment

Move ownership of MojoCompositorFrameSinkPrivatePtr into FrameSinkManagerHost

Project Member Reported by kylec...@chromium.org, Jun 13 2017

Issue description

When creating a MojoCompositorFrameSink for a client, something needs to own the MojoCompositorFrameSinkPrivatePtr. This is the privileged host to viz interface that corresponds to a MojoCompositorFrameSink. OffscreenCanvasSurfaceImpl is the only client using FrameSinkManagerHost and it owns it's MojoCompositorFrameSinkPrivatePtr now.

Instead of having a class that uses FrameSinkManagerHost own the MojoCompositorFrameSinkPrivatePtr and be a FrameSinkObserver, we should fold the ownership of the MojoCompositorFrameSinkPrivatePtr into FrameSinkManagerHost and have the class just implement FrameSinkObserver to keep it simple.
 
Blocking: 732900
Blocking: 732903
Project Member

Comment 3 by bugdroid1@chromium.org, Jun 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8a872f752ca42eab4fcef3a00331cf5074bd4a50

commit 8a872f752ca42eab4fcef3a00331cf5074bd4a50
Author: kylechar <kylechar@chromium.org>
Date: Thu Jun 15 15:03:58 2017

Hold private interface in FrameSinkManagerHost.

Move the MojoCompositorFrameSinkPrivate interface into
FrameSinkManagerHost. FrameSinkManagerHost will need to use the
interface, so it makes the most sense to own it. Also, it avoids each
client type (renderer, exo, ui::Compositor, etc.) needing to own this
interface.

Bug:  732896 
Change-Id: I4c9392855d509ed9aa3d8f0c89171f0961bc45c8
Reviewed-on: https://chromium-review.googlesource.com/534713
Reviewed-by: Xida Chen <xidachen@chromium.org>
Reviewed-by: danakj <danakj@chromium.org>
Reviewed-by: Fady Samuel <fsamuel@chromium.org>
Commit-Queue: kylechar <kylechar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#479702}
[modify] https://crrev.com/8a872f752ca42eab4fcef3a00331cf5074bd4a50/components/viz/host/frame_sink_manager_host.cc
[modify] https://crrev.com/8a872f752ca42eab4fcef3a00331cf5074bd4a50/components/viz/host/frame_sink_manager_host.h
[modify] https://crrev.com/8a872f752ca42eab4fcef3a00331cf5074bd4a50/content/browser/renderer_host/offscreen_canvas_surface_impl.cc
[modify] https://crrev.com/8a872f752ca42eab4fcef3a00331cf5074bd4a50/content/browser/renderer_host/offscreen_canvas_surface_impl.h

Status: Fixed (was: Assigned)

Sign in to add a comment