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

Issue 732900 link

Starred by 1 user

Issue metadata

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

Blocked on:
issue 732896

Blocking:
issue 657959
issue 770833



Sign in to add a comment

Implement ContextFactory and ContextFactoryPrivate that uses viz on Linux Desktop

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

Issue description

ui::Compositor needs a way to create a CompositorFrameSink that uses Mojo. This happens via ContextFactory::CreateCompositorFrameSink(). For Linux Desktop Chrome to use viz we need an implementation of this that talks to FrameSinkManagerHost and requests a new root MojoCompositorFrameSink.

The ContextFactory implementation should hold onto the ClientCompositorFrameSink somewhere. It also needs to hold onto the cc::mojom::DisplayPrivate that goes along with ClientCompositorFrameSink. The DisplayPrivate can be used to implement the cc::Display related parts of ContextFactoryPrivate.
 
Owner: samans@chromium.org
Status: Assigned (was: Available)
Take a look at MusContextFactory as a starting point.
Blockedon: -730213
Blocking: 770833
Labels: -display-compositor displaycompositor
Owner: kylec...@chromium.org
Status: Started (was: Assigned)
I'm working on this as part of  crbug.com/770833 .
Project Member

Comment 4 by bugdroid1@chromium.org, Oct 19 2017

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

commit 150e09e16f6db3594a10593ea46af1e9f717761e
Author: kylechar <kylechar@chromium.org>
Date: Thu Oct 19 13:57:52 2017

Add VizProcessTransportFactory.

The VizProcessTransportFactory is a replacement for
GpuProcessTransportFactory for viz mode. In this mode the display
compositor runs in the viz process instead of browser process.

The --enable-viz flag won't work yet since there are changes required in
content/browser/renderer_host that still need to land.

TBR: mpearson@chromium.org
Bug:  770833 ,  732900 
Change-Id: I0aaf9ef369366838e2335447358fd6dfaaa5bf0a
Reviewed-on: https://chromium-review.googlesource.com/703274
Commit-Queue: kylechar <kylechar@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Reviewed-by: danakj <danakj@chromium.org>
Cr-Commit-Position: refs/heads/master@{#510076}
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/components/viz/common/switches.cc
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/components/viz/common/switches.h
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/content/browser/BUILD.gn
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/content/browser/browser_main_loop.cc
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/content/browser/compositor/OWNERS
[add] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/content/browser/compositor/viz_process_transport_factory.cc
[add] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/content/browser/compositor/viz_process_transport_factory.h
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/content/browser/gpu/gpu_process_host.cc
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/content/browser/gpu/gpu_process_host.h
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/content/gpu/gpu_child_thread.cc
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/services/ui/public/cpp/gpu/command_buffer_metrics.cc
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/services/ui/public/cpp/gpu/command_buffer_metrics.h
[modify] https://crrev.com/150e09e16f6db3594a10593ea46af1e9f717761e/tools/metrics/histograms/histograms.xml

Status: Fixed (was: Started)

Sign in to add a comment