exo CompositorFrames are not the same size as contents |
|||||||
Issue descriptionThe size of exo CompositorFrames doesn't match the size of the DrawQuad contents in the CompositorFrame. SurfaceTreeHost::SubmitCompositorFrame() always generates a CompositorFrame that is the same size as the display. It should be relatively simple to fix. We draw a border/shadow around the exo window, so we know the size and offset, which is all the information needed to do generate the correct CompositorFrame.
,
Aug 18 2017
I remember David maintained it is because wayland doesn't allow set absolute position of a surface. So we create a shell surface with the size of the screen and make it transparent. And then put the content of the app as a sub surface on it. To get ride of the display size shell surface, we need modify the code in android side. David and Lloyd, could you please add more detail about it? Thanks.
,
Aug 18 2017
#2, correct. There are some long term plans for moving Arc to something that is closer to a standard wayland app but not sure what the time line for that is. The display sized surface at the bottom of each arc app is backed by a 1x1 buffer scaled to the display size and it has alpha=0 so we can probably detect that and limit the size of CompositorFrames based on it.
,
Aug 23 2017
This is potentially blocking surface sync and viz work. Can we figure out a way to ensure that the CompositorFrame size matches the window size in exo despite ARC++ weirdness? Marking as P1.
,
Aug 23 2017
,
Sep 21 2017
I think we already workaround this problem. So it doesn't block surface sync and viz work.
,
Nov 8 2017
Migrating from Internals>Viz to Internals>Services>Viz.
,
Aug 14
|
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by rjkroege@chromium.org
, Aug 18 2017Owner: penghuang@chromium.org
Status: Assigned (was: Available)