aboutsummaryrefslogtreecommitdiff
path: root/rose.c
diff options
context:
space:
mode:
Diffstat (limited to 'rose.c')
-rw-r--r--rose.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/rose.c b/rose.c
index f7d9ccc..0f49522 100644
--- a/rose.c
+++ b/rose.c
@@ -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,