ui: add support for mice with extra/side buttons

Adds input event generation for BTN_SIDE and BTN_EXTRA events to gtk and
input-linux methods.

Signed-off-by: Fabian Lesniak <fabian@lesniak-it.de>
Message-id: 20161206190007.7539-4-fabian@lesniak-it.de
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
Fabian Lesniak 2016-12-06 20:00:07 +01:00 committed by Gerd Hoffmann
parent 8b0caab07b
commit 1266b68c6e
2 changed files with 10 additions and 0 deletions

View File

@ -1007,6 +1007,10 @@ static gboolean gd_button_event(GtkWidget *widget, GdkEventButton *button,
btn = INPUT_BUTTON_MIDDLE;
} else if (button->button == 3) {
btn = INPUT_BUTTON_RIGHT;
} else if (button->button == 8) {
btn = INPUT_BUTTON_SIDE;
} else if (button->button == 9) {
btn = INPUT_BUTTON_EXTRA;
} else {
return TRUE;
}

View File

@ -291,6 +291,12 @@ static void input_linux_handle_mouse(InputLinux *il, struct input_event *event)
qemu_input_queue_btn(NULL, INPUT_BUTTON_WHEEL_DOWN,
event->value);
break;
case BTN_SIDE:
qemu_input_queue_btn(NULL, INPUT_BUTTON_SIDE, event->value);
break;
case BTN_EXTRA:
qemu_input_queue_btn(NULL, INPUT_BUTTON_EXTRA, event->value);
break;
};
break;
case EV_REL: