mirror of
https://github.com/gnif/LookingGlass.git
synced 2025-08-04 09:44:16 +00:00
[client] added support for spice side/extra buttons
Note, QEMU must have support for these new buttons for this to have any effect.
This commit is contained in:
@@ -1154,32 +1154,37 @@ int eventFilter(void * userdata, SDL_Event * event)
|
||||
break;
|
||||
|
||||
case SDL_MOUSEBUTTONDOWN:
|
||||
{
|
||||
if (state.ignoreInput || !params.useSpiceInput || !state.cursorInView)
|
||||
break;
|
||||
|
||||
// The SPICE protocol doesn't support more than a standard PS/2 3 button mouse
|
||||
if (event->button.button > 3)
|
||||
break;
|
||||
int button = event->button.button;
|
||||
if (button > 3)
|
||||
button += 2;
|
||||
|
||||
if (
|
||||
!spice_mouse_position(event->button.x, event->button.y) ||
|
||||
!spice_mouse_press(event->button.button)
|
||||
!spice_mouse_press(button)
|
||||
)
|
||||
{
|
||||
DEBUG_ERROR("SDL_MOUSEBUTTONDOWN: failed to send message");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case SDL_MOUSEBUTTONUP:
|
||||
{
|
||||
if (state.ignoreInput || !params.useSpiceInput || !state.cursorInView)
|
||||
break;
|
||||
|
||||
// The SPICE protocol doesn't support more than a standard PS/2 3 button mouse
|
||||
if (event->button.button > 3)
|
||||
break;
|
||||
int button = event->button.button;
|
||||
if (button > 3)
|
||||
button += 2;
|
||||
|
||||
if (
|
||||
!spice_mouse_position(event->button.x, event->button.y) ||
|
||||
!spice_mouse_release(event->button.button)
|
||||
!spice_mouse_release(button)
|
||||
)
|
||||
{
|
||||
DEBUG_ERROR("SDL_MOUSEBUTTONUP: failed to send message");
|
||||
@@ -1187,6 +1192,7 @@ int eventFilter(void * userdata, SDL_Event * event)
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// consume all events
|
||||
return 0;
|
||||
|
Submodule repos/PureSpice updated: 35ecd45b0e...9381dde5ec
Reference in New Issue
Block a user