[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 8/8] gtk: Fix accelerators being triggered twice with
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PULL 8/8] gtk: Fix accelerators being triggered twice with gtk3 |
Date: |
Tue, 29 Apr 2014 11:46:14 +0200 |
From: Cole Robinson <address@hidden>
When keyboard focus is grabbed, current qemu wants to pass every
keypress to the VM, unless the user is pressing a UI accelerator.
That's exactly how things work without any of the fancy handling. Drop
the special handling, which seems to trigger accelerators twice on gtk3.
Signed-off-by: Cole Robinson <address@hidden>
Signed-off-by: Gerd Hoffmann <address@hidden>
---
ui/gtk.c | 22 ----------------------
1 file changed, 22 deletions(-)
diff --git a/ui/gtk.c b/ui/gtk.c
index 1465a38..9f5061a 100644
--- a/ui/gtk.c
+++ b/ui/gtk.c
@@ -99,8 +99,6 @@ static inline void gdk_drawable_get_size(GdkWindow *w, gint
*ww, gint *wh)
#endif
#define HOTKEY_MODIFIERS (GDK_CONTROL_MASK | GDK_MOD1_MASK)
-#define IGNORE_MODIFIER_MASK \
- (GDK_MODIFIER_MASK & ~(GDK_LOCK_MASK | GDK_MOD2_MASK))
static const int modifier_keycode[] = {
/* shift, control, alt keys, meta keys, both left & right */
@@ -489,24 +487,6 @@ static void gd_mouse_mode_change(Notifier *notify, void
*data)
/** GTK Events **/
-static gboolean gd_window_key_event(GtkWidget *widget, GdkEventKey *key, void
*opaque)
-{
- GtkDisplayState *s = opaque;
- gboolean handled = FALSE;
-
- if (!gd_is_grab_active(s) ||
- (key->state & IGNORE_MODIFIER_MASK) == HOTKEY_MODIFIERS) {
- handled = gtk_window_activate_key(GTK_WINDOW(widget), key);
- }
- if (handled) {
- gtk_release_modifiers(s);
- } else {
- handled = gtk_window_propagate_key_event(GTK_WINDOW(widget), key);
- }
-
- return handled;
-}
-
static gboolean gd_window_close(GtkWidget *widget, GdkEvent *event,
void *opaque)
{
@@ -1272,8 +1252,6 @@ static void gd_connect_signals(GtkDisplayState *s)
g_signal_connect(s->show_tabs_item, "activate",
G_CALLBACK(gd_menu_show_tabs), s);
- g_signal_connect(s->window, "key-press-event",
- G_CALLBACK(gd_window_key_event), s);
g_signal_connect(s->window, "delete-event",
G_CALLBACK(gd_window_close), s);
--
1.8.3.1
- [Qemu-devel] [PULL 0/8] gtk patch queue, Gerd Hoffmann, 2014/04/29
- [Qemu-devel] [PULL 2/8] configure: Re-run make if gtkabi/sdlabi is changed, Gerd Hoffmann, 2014/04/29
- [Qemu-devel] [PULL 5/8] gtk: Remove use of deprecated stock items, Gerd Hoffmann, 2014/04/29
- [Qemu-devel] [PULL 1/8] configure: Document --with-gtkabi, Gerd Hoffmann, 2014/04/29
- [Qemu-devel] [PULL 6/8] gtk: Use ctrl+alt+q for quit accelerator, Gerd Hoffmann, 2014/04/29
- [Qemu-devel] [PULL 3/8] gtk: Don't use deprecated gtk_image_menu_item_new_with_mnemonic, Gerd Hoffmann, 2014/04/29
- [Qemu-devel] [PULL 4/8] gtk: Don't use deprecated vte_terminal_get_adjustment, Gerd Hoffmann, 2014/04/29
- [Qemu-devel] [PULL 8/8] gtk: Fix accelerators being triggered twice with gtk3,
Gerd Hoffmann <=
- [Qemu-devel] [PULL 7/8] gtk: Fix -serial vc, Gerd Hoffmann, 2014/04/29