[Spice-devel] [spice-gtk PATCH] Handle single headed monitors that have a non-zero x, y config offset

Christophe Fergeau cfergeau at redhat.com
Mon Jun 22 06:15:00 PDT 2015


On Mon, Jun 22, 2015 at 03:03:24PM +0200, Christophe Fergeau wrote:
> On Thu, Jun 18, 2015 at 07:14:13PM -0400, sstutsma at redhat.com wrote:
> > From: Sandy Stutsman <sstutsma at redhat.com>
> > 
> > Each monitor on a Windows guest is represented as a separate, single-headed
> > device with its own framebuffer.  When there are multiple monitors, all
> > monitors but one will have a non-zero xy config position.  But even in
> > these cases the whole area (frame-buffer) of each monitor should be
> > updated.
> > 
> > Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=1202419
> > ---
> >  src/spice-widget.c | 7 ++++++-
> >  1 file changed, 6 insertions(+), 1 deletion(-)
> > 
> > diff --git a/src/spice-widget.c b/src/spice-widget.c
> > index 260fda5..f1e1508 100644
> > --- a/src/spice-widget.c
> > +++ b/src/spice-widget.c
> > @@ -293,7 +293,12 @@ static void update_monitor_area(SpiceDisplay *display)
> >          goto whole;
> >      }
> >  
> > -    update_area(display, c->x, c->y, c->width, c->height);
> > +    /* If only one head on this monitor, update the whole area */
> > +    if(monitors->len == 1) {
> > +        update_area(display, 0, 0, c->width, c->height);
> > +    } else {
> > +        update_area(display, c->x, c->y, c->width, c->height);
> > +    }
> 
> What happens if c->x != 0 and c->y != 0 in the single monitor case and
> we don't force these to 0?

Ah, just looked at update_area which expects the primary to start at (0,
0)

Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20150622/2377bdfd/attachment-0001.sig>


More information about the Spice-devel mailing list