diff options
Diffstat (limited to 'rose.c')
-rw-r--r-- | rose.c | 12 |
1 files changed, 9 insertions, 3 deletions
@@ -381,15 +381,21 @@ int handle_signal_keypress(void* self, GdkEvent* event, GtkNotebook* notebook) { (void)self; + guint event_keyval = 0; + gdk_event_get_keyval(event, &event_keyval); + GdkModifierType event_state = 0; + gdk_event_get_state(event, &event_state); + /* - printf("Keypress state: %d\n", event->key.state); + printf("Keypress state: %d\n", event_state); if(event->key.state & GDK_CONTROL_MASK){ printf("Keypress state is: CONTROL\n"); } - printf("Keypress value: %d\n", event->key.keyval); + printf("Keypress value: %d\n", event_keyval); */ + for (int i = 0; i < sizeof(shortcut) / sizeof(shortcut[0]); i++) - if ((event->key.state & shortcut[i].mod || shortcut[i].mod == 0x0) && event->key.keyval == shortcut[i].key) + if ((event_state & shortcut[i].mod || shortcut[i].mod == 0x0) && event_keyval == shortcut[i].key) return handle_shortcut(shortcut[i].id, notebook); /* If I wanted to bind button presses, like the extra button in the mouse, |