Re: [PATCH spice-gtk] Fix non-tablet non-vd-agent erratic mouse motion RH#1285378

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

 



On Wed, 27 Sep 2017 15:39:08 +0200, Marc-André Lureau wrote:
> > https://bugzilla.redhat.com/show_bug.cgi?id=1285378
>
> Is this really solving that bug under wayland? I thought the problem was
> that there was no gdk_device_warp() or alternative for relative mouse input.

Confirming my fix does not fix the Wayland bug (it even makes it worse).
It does fix a different mouse bug reproducible only on x11 server.

I will try to fix the Wayland issue (in fact unrelated to this patch) and
altogether to disable this warp functionality on Wayland completely.


> I need an explanation for the "delta +=". Why not set mouse_delta to 0 after
> using the value?

gdk_device_warp() is permanent, it moves the mouse pointer forever.
mouse_delta_x/y are applied still to the absolute mouse position, before it is
relativized to dx/dy.  Therefore it needs to be remembered forever.

Such one-time application of "delta" compensation could be done for dx/dy but
then we would need to apply inverse transform_input() to such delta as
gdk_device_warp() is done in screen coordinates and not in virtual machine
coordinates needed for dx/dy.


> Could you check if you can remove gdk_display_sync() with your patch?

I see no difference with both the original code and with my code (using
mouse_delta_x/y) whether the gdk_display_sync() call is present or not.

BTW today I have found the erratic mouse motion happens for me only with
virt-viewer over ssh -X (on local etherner).  On local machine the erratic
movement does not really happen.

Steph
_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
https://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]