diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-10-11 16:19:17 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-10-11 16:19:17 +0000 |
| commit | 055aa5cd7411c4563956e376523219afc6198ce1 (patch) | |
| tree | 9211d671f2cf93de77c8ed162aab44e982b3b5a0 /openbox/keyboard.c | |
| parent | 7ca410e66357706e36ea740b49d899be832da671 (diff) | |
gracefully handle grabs failing when doing interactive actions
Diffstat (limited to 'openbox/keyboard.c')
| -rw-r--r-- | openbox/keyboard.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/openbox/keyboard.c b/openbox/keyboard.c index 11b3a985..05d40cd0 100644 --- a/openbox/keyboard.c +++ b/openbox/keyboard.c @@ -155,8 +155,8 @@ gboolean keyboard_bind(GList *keylist, ObAction *action) return TRUE; } -void keyboard_interactive_grab(guint state, ObClient *client, - ObAction *action) +gboolean keyboard_interactive_grab(guint state, ObClient *client, + ObAction *action) { ObInteractiveState *s; @@ -164,10 +164,10 @@ void keyboard_interactive_grab(guint state, ObClient *client, if (!interactive_states) { if (!grab_keyboard(TRUE)) - return; + return FALSE; if (!grab_pointer(TRUE, OB_CURSOR_NONE)) { grab_keyboard(FALSE); - return; + return FALSE; } } @@ -178,6 +178,8 @@ void keyboard_interactive_grab(guint state, ObClient *client, s->actions = g_slist_append(NULL, action); interactive_states = g_slist_append(interactive_states, s); + + return TRUE; } void keyboard_interactive_end(ObInteractiveState *s, |
