ungrab only as many times as we grabbed
Dana Jansens danakj@orodu.net
1 files changed,
7 insertions(+),
4 deletions(-)
jump to
M
openbox/keyboard.c
→
openbox/keyboard.c
@@ -186,12 +186,15 @@ s->action->data.inter.final = TRUE;
s->action->func(&s->action->data); - grab_keyboard(FALSE); - grab_pointer(FALSE, OB_CURSOR_NONE); - keyboard_reset_chains(); - g_free(s); + interactive_states = g_slist_delete_link(interactive_states, it); + if (!interactive_states) { + grab_keyboard(FALSE); + grab_pointer(FALSE, OB_CURSOR_NONE); + keyboard_reset_chains(); + } + handled = TRUE; } }