Re: [protocol RFC 0/2] RANDR support via QXLHead + SpiceHead

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



  Hi,

>  1. Guest enables a new monitor:
>  2. Guest pushes QXLHead command to command ring
>  3. Server sends SpiceHead message on the ring's display channel.
>  4. Client creates a window out of [x, y, width, height] scanning out of the primary surface (there is one associated primary with the display channel)

Iziks original idea for that one was to just use additional surfaces for
the additional heads.  QXL_IO_{CREATE,DESTROY}_PRIMARY write an id
because of that, which is forced to be zero right now.  IIRC the plan
was to just allow non-zero values for more heads there, so each
display/head has its own primary surface.

One obvious issue with that is that the QXLDevSurfaceCreate struct lacks
an field to pass on the surface id.

A possible alternative approach is to just use a normal SurfaceCmd and
use a flag to indicate that this specific surface is supposed to be a
new head.

> Some other notes:
>  a. To disable a monitor, send (id, 0, 0, 0, 0) (So there remain invalid range of
>  values {(id, x, y, width, height) | max(x, y, width, height)!=0 and min(width,
>  height) = 0})

Would be a simple surface destroy in that case.

cheers,
  Gerd
_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/spice-devel


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]