From a260db31a99ad35a5bf347facab2cdd61e3b7558 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Sun, 21 Sep 2003 17:17:34 +0000 Subject: [PATCH] if the keyboard is grabbed then dont ungrab it! --- openbox/action.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/openbox/action.c b/openbox/action.c index f780ce88..441b9395 100644 --- a/openbox/action.c +++ b/openbox/action.c @@ -785,7 +785,7 @@ ObAction *action_parse(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node, return act; } -void action_run_list(GSList *acts, struct _ObClient *c, +void action_run_list(GSList *acts, ObClient *c, guint state, guint button, gint x, gint y, gboolean cancel, gboolean done) { @@ -793,16 +793,22 @@ void action_run_list(GSList *acts, struct _ObClient *c, ObAction *a; gboolean inter = FALSE; + if (!acts) + return; + if (x < 0 && y < 0) screen_pointer_pos(&x, &y); - for (it = acts; it; it = g_slist_next(it)) { - a = it->data; - if (a->data.any.interactive) { - inter = TRUE; - break; + if (grab_on_keyboard()) + inter = TRUE; + else + for (it = acts; it; it = g_slist_next(it)) { + a = it->data; + if (a->data.any.interactive) { + inter = TRUE; + break; + } } - } if (!inter) { /* sometimes when we execute another app as an action, -- 2.39.2