From 1266b68c6e3af7f7bd53edcba1ee12cec07cdefe Mon Sep 17 00:00:00 2001 From: Fabian Lesniak Date: Tue, 6 Dec 2016 20:00:07 +0100 Subject: 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 Message-id: 20161206190007.7539-4-fabian@lesniak-it.de Signed-off-by: Gerd Hoffmann --- ui/gtk.c | 4 ++++ ui/input-linux.c | 6 ++++++ 2 files changed, 10 insertions(+) (limited to 'ui') diff --git a/ui/gtk.c b/ui/gtk.c index bdd831c268..3f67a345d1 100644 --- a/ui/gtk.c +++ b/ui/gtk.c @@ -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; } diff --git a/ui/input-linux.c b/ui/input-linux.c index f345317794..ac31f47719 100644 --- a/ui/input-linux.c +++ b/ui/input-linux.c @@ -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: -- cgit v1.2.1