[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 4/4] gtk: Add "Grab On Click" option
From: |
Takashi Iwai |
Subject: |
[Qemu-devel] [PATCH v2 4/4] gtk: Add "Grab On Click" option |
Date: |
Wed, 2 Apr 2014 14:32:33 +0200 |
I simply like it better, you don't? :)
Signed-off-by: Takashi Iwai <address@hidden>
---
ui/gtk.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/ui/gtk.c b/ui/gtk.c
index 9b8df1224fdb..ffaf91ea453a 100644
--- a/ui/gtk.c
+++ b/ui/gtk.c
@@ -141,6 +141,7 @@ typedef struct GtkDisplayState
GtkWidget *zoom_fit_item;
GtkWidget *grab_item;
GtkWidget *grab_on_hover_item;
+ GtkWidget *grab_on_click_item;
GtkWidget *vga_item;
int nb_vcs;
@@ -189,6 +190,11 @@ static bool gd_grab_on_hover(GtkDisplayState *s)
return
gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(s->grab_on_hover_item));
}
+static bool gd_grab_on_click(GtkDisplayState *s)
+{
+ return
gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(s->grab_on_click_item));
+}
+
static bool gd_on_vga(GtkDisplayState *s)
{
return gtk_notebook_get_current_page(GTK_NOTEBOOK(s->notebook)) == 0;
@@ -685,6 +691,12 @@ static gboolean gd_button_event(GtkWidget *widget,
GdkEventButton *button,
GtkDisplayState *s = opaque;
InputButton btn;
+ if (button->button == 1 && button->type == GDK_BUTTON_PRESS &&
+ !gd_is_grab_active(s) && gd_grab_on_click(s) && button->button == 1) {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(s->grab_item),
TRUE);
+ return TRUE;
+ }
+
if (button->button == 1) {
btn = INPUT_BUTTON_LEFT;
} else if (button->button == 2) {
@@ -1416,6 +1428,9 @@ static GtkWidget *gd_create_menu_view(GtkDisplayState *s,
GtkAccelGroup *accel_g
s->grab_on_hover_item = gtk_check_menu_item_new_with_mnemonic(_("Grab On
_Hover"));
gtk_menu_shell_append(GTK_MENU_SHELL(view_menu), s->grab_on_hover_item);
+ s->grab_on_click_item = gtk_check_menu_item_new_with_mnemonic(_("Grab On
_Click"));
+ gtk_menu_shell_append(GTK_MENU_SHELL(view_menu), s->grab_on_click_item);
+
s->grab_item = gtk_check_menu_item_new_with_mnemonic(_("_Grab Input"));
gtk_menu_item_set_accel_path(GTK_MENU_ITEM(s->grab_item),
"<QEMU>/View/Grab Input");
--
1.9.1
- [Qemu-devel] [PATCH v2 0/4] Fix relative pointer tracking on Gtk UI (v2), Takashi Iwai, 2014/04/02
- [Qemu-devel] [PATCH v2 4/4] gtk: Add "Grab On Click" option,
Takashi Iwai <=
- Re: [Qemu-devel] [PATCH v2 4/4] gtk: Add "Grab On Click" option, Cole Robinson, 2014/04/02
- Re: [Qemu-devel] [PATCH v2 4/4] gtk: Add "Grab On Click" option, Gerd Hoffmann, 2014/04/02
- [Qemu-devel] [PATCH] gtk: Grab pointer on click when in relative mode, Cole Robinson, 2014/04/02
- Re: [Qemu-devel] [PATCH] gtk: Grab pointer on click when in relative mode, Gerd Hoffmann, 2014/04/02
- Re: [Qemu-devel] [PATCH] gtk: Grab pointer on click when in relative mode, Takashi Iwai, 2014/04/02
- Re: [Qemu-devel] [PATCH] gtk: Grab pointer on click when in relative mode, Cole Robinson, 2014/04/02
- Re: [Qemu-devel] [PATCH] gtk: Grab pointer on click when in relative mode, Takashi Iwai, 2014/04/03
[Qemu-devel] [PATCH v2 1/4] gtk: Use gtk generic event signal instead of motion-notify-event, Takashi Iwai, 2014/04/02