Skip to content

Commit

Permalink
Unset Lock key masks when closing menu
Browse files Browse the repository at this point in the history
This addresses an issue that occurs when trying to close the menu using the configured shortcut without modifiers, but Lock keys (NumLock, etc) are enabled.

Fixes solus-project#70
  • Loading branch information
vkareh committed Jun 7, 2018
1 parent 6892d32 commit 7d67f1b
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion src/frontend/menu-keyboard.c
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,17 @@ gboolean brisk_menu_window_key_press(BriskMenuWindow *self, GdkEvent *event,
__brisk_unused__ gpointer v)
{
autofree(gchar) *accel_name = NULL;
GdkModifierType lock_maks = GDK_MOD2_MASK | GDK_LOCK_MASK | GDK_MOD5_MASK;
guint mods;

if (!self->shortcut) {
return GDK_EVENT_PROPAGATE;
}

accel_name = gtk_accelerator_name(event->key.keyval, event->key.state);
/* Unset mask of the lock keys */
mods = event->key.state & ~(lock_maks);

accel_name = gtk_accelerator_name(event->key.keyval, mods);
if (!accel_name || g_ascii_strcasecmp(self->shortcut, accel_name) != 0) {
return GDK_EVENT_PROPAGATE;
}
Expand Down

0 comments on commit 7d67f1b

Please sign in to comment.