[Spice-devel] [PATCH spice-gtk 1/4] gtk: add spice_main_request_mouse_mode()

Marc-André Lureau marcandre.lureau at gmail.com
Mon Nov 16 06:34:57 PST 2015


Hi

On Wed, Nov 11, 2015 at 11:07 AM, Victor Toso <lists at victortoso.com> wrote:
> Hi,
>
> On Tue, Nov 10, 2015 at 03:49:32PM +0100, Victor Toso wrote:
>> Hi,
>>
>> On Tue, Nov 10, 2015 at 02:05:23PM +0100, Marc-André Lureau wrote:
>> > Hi
>> >
>> > On Tue, Nov 10, 2015 at 11:05 AM, Victor Toso <lists at victortoso.com> wrote:
>> > > Hi,
>> > >
>> > > On Mon, Nov 09, 2015 at 03:02:07PM +0100, Marc-André Lureau wrote:
>> > >> Send a SpiceMsgcMainMouseModeRequest message to request a mouse mode.
>> > >>
>> > >> This allows to switch between client/absolute and server/relative mouse
>> > >> modes.
>> > >>
>> > >> This is necessary for some applications that require pointer
>> > >> re-positioning, which we can't provide through a remote protocol easily
>> > >> with client pointer (no such hardware-level message exists afaik).
>> > >
>> > > I've retested again in top of rhel7 server/qemu and upstream
>> > > server/qemu. On rhel7, the mouse pointer barely moves and it goes back
>> > > againt to its original position in top-left corner. On upstream, the
>> > > mouse pointer does not move at all.
>> >
>> > Are you running the client in a vm? If yes, you can't use server-side
>> > mouse this way, because there is no way for the client cursor to be
>> > wrapped.
>> > Please test server-side cursor mode on bare-metal.
>>
>> All tests client was on bare-metal, f23 with upstream client.
>> rhel7 server is also bare-metal desktop with some VMs running.
>>
>> >
>> > > I did not lose my pointer this time (I could toggle back with
>> > > Shift+F12).
>> > >
>> > > All VMs has ps/2 device. The mouse pointer should keep moving, right?
>> >
>> > It needs -machine ..vmport=off to work properly as explained:
>> >
>> > http://libvirt.org/git/?p=libvirt.git;a=commitdiff;h=208abbcbd7b7225d4506cfbb230cb2cb3fce87f8
>> >
>>
>> Okay, I'll retest on rhel7 again but even with vmport=off
>
> aaaand vmport=off is not supported in rhel7, it seems
> "qemu-kvm: -machine pc-i440fx-rhel7.0.0,accel=kvm,usb=off,vmport=off:
> Invalid parameter 'vmport'"
>
>> this still
>> fails with upstream spice-server. Mouse pointer did not change:
>> on client=host, upstream spice-server.
>
> So, I manage to make it work. I needed to disable the tablet input

What do you mean with "disable the tablet input" ? It works for me
with or without -usbdevice tablet.

> device. It is working even without vmport=off.

It doesn't work without vmport=off. Perhaps you tested with rhel qemu
and it has it disabled at compile time or by default?

> With tablet device, the videos I've made are what happened with me.
>
> Cheers,
>   toso
>
>> Btw, your patches look good, I'm just trying to understand the change
>> and check if there are any issues.
>>
>> Also, it would be nice to include the information regarding vmport=off
>> requirement, maybe in the API.

Well, it's quite far from spice-gtk. It's a qemu-specific issue. I
guess we could document it in the Spice user manual.

>>
>> Do you think the mouse mode should still change if vmport=off is not
>> set?

We would need a new spice-server API and flags in the protocol just
for this qemu-specific issue. Imho, it's unnecessary. If switching
mouse mode doesn't work, you can always switch back to the client
mode.


-- 
Marc-André Lureau


More information about the Spice-devel mailing list