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

Issue 649366 link

Starred by 4 users

Issue metadata

Status: Archived
Owner:
Last visit > 30 days ago
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug

Blocked on:
issue 680992

Blocking:
issue 620927
issue 612637



Sign in to add a comment

Write mojom and StructTraits for DisplaySnapshot

Project Member Reported by kylec...@chromium.org, Sep 22 2016

Issue description

In order to convert Ozone GBM to use Mojo IPC we will need a mojom and StructTraits for DisplaySnapshot (and likely a new DisplaySnapshot implementation). DisplaySnapshots need to be sent from the gpu process to the mus-ws process for Ozone GBM.

This would be similar to the DisplaySnapshotProxy and corresponding Chrome IPC code:
https://cs.chromium.org/chromium/src/ui/ozone/common/display_snapshot_proxy.h
https://cs.chromium.org/chromium/src/ui/ozone/common/gpu/ozone_gpu_messages.h


 

Comment 1 by h...@chromium.org, Sep 23 2016

Status: Started (was: Assigned)
Acknolwedged. Starting on this now.

Comment 2 by h...@chromium.org, Sep 24 2016

It seems this is largely a manual process. I don't want to do anything silly, so if there's a tool to automate part or all of the conversion please let me know.

Need to add at least 3 mojom's under ui/display/types/mojo/ for:

display_constants.mojom (for enum DisplayConnectionType)
display_mode.mojom (for struct DisplayMode) 
display_snapshot.mojom (for struct DisplaySnapshot)

Cc: roc...@chromium.org yzshen@chromium.org
I think it's mostly manual. I suggest there be a ui/display/mojom directory for these. ui/gfx/geometry/mojo is probably a good example to look at.

rockot@ or yzhen@ (CC'ed here) are the best people for specific mojo questions. Mojo has been evolving rapidly so it's always worth asking.

Comment 4 by h...@chromium.org, Sep 27 2016

rockot@ or yzhen@ -- I tried to follow ui/gfx/geometry/mojo to write mojom for //ui/display/types/display_*.h but got some presubmit warnings:

** Presubmit ERRORS **
Do not introduce new mojom targets with use_new_wrapper_types set to false. The mode is deprecated and will be removed soon.
  ui/display/mojo/BUILD.gn

What is this deal with deprecating use_new_wrapper_types? Thanks.

Comment 5 by roc...@chromium.org, Sep 27 2016

We just haven't gotten around to porting existing uses away from the old
wrappers
There's no good reason to use them for new targets.
Blocking: 612637
Components: Internals>Graphics
Labels: Proj-Mustash-Milestone-Tadpole
hshi@ how is this coming?

Comment 9 by h...@chromium.org, Dec 9 2016

re:#8 not much progress, I'm afraid, this is still in my backburner.
Blockedon: 680992
Cc: thanhph@chromium.org mustash-bugs@google.com
 Issue 682696  has been merged into this issue.
Labels: Proj-Ozone-DRM
Owner: thanhph@chromium.org
Thanh is going to take a look at this.

Comment 13 by enne@chromium.org, Jan 25 2017

Components: -Internals>Graphics Internals>MUS Internals>GPU
Project Member

Comment 14 by bugdroid1@chromium.org, Mar 8 2017

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

commit e29136a35e8282ad38b3504915837eb26425918c
Author: thanhph <thanhph@chromium.org>
Date: Wed Mar 08 16:24:46 2017

Write mojoms and StructTraits for DisplaySnapshot.

We need to enable communication between the mus window server and mus
gpu in the new split architecture of window server and gpu.

DisplaySnapShot is abstract so DisplaySnapshotMojo is created to
support mojom serialization/deserialization. Enum mojom and struct
traits are also added for DisplayConnectionType.

BUG= 649366 

Review-Url: https://codereview.chromium.org/2646213002
Cr-Commit-Position: refs/heads/master@{#455466}

[modify] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/BUILD.gn
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/display_snapshot_mojo.cc
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/display_snapshot_mojo.h
[modify] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/BUILD.gn
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_constants.mojom
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_constants.typemap
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_constants_struct_traits.cc
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_constants_struct_traits.h
[modify] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_mode.typemap
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_mode_struct_traits.cc
[modify] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_mode_struct_traits.h
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_snapshot_mojo.mojom
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_snapshot_mojo.typemap
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_snapshot_mojo_struct_traits.cc
[add] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_snapshot_mojo_struct_traits.h
[modify] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_struct_traits_test.mojom
[modify] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/display_struct_traits_unittest.cc
[modify] https://crrev.com/e29136a35e8282ad38b3504915837eb26425918c/ui/display/mojo/typemaps.gni

Status: Fixed (was: Started)

Comment 16 by dchan@google.com, May 30 2017

Labels: VerifyIn-60
Labels: VerifyIn-61

Comment 18 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)
Components: -Internals>MUS Internals>Services>WindowService

Sign in to add a comment