summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-09-26 17:46:49 +0000
committerDana Jansens <danakj@orodu.net>2003-09-26 17:46:49 +0000
commitfb341869b1f1d82db06b7c92cacff7db58633344 (patch)
tree0c823f11136511559e22b749f6a576bddebb21b7
parent1241a0cf0da3b7aee0e5df26e74fc517021ff2ba (diff)
use an action only for Raise
-rw-r--r--openbox/client.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/openbox/client.c b/openbox/client.c
index 725416bb..48fd2149 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -2615,8 +2615,24 @@ void client_activate(ObClient *self, gboolean here)
return;
if (self->shaded)
client_shade(self, FALSE);
- action_run_string("Focus", self);
- action_run_string("Raise", self);
+
+ client_focus(self);
+
+ /* we do this an action here. this is rather important. this is because
+ we want the results from the focus change to take place BEFORE we go
+ about raising the window. when a fullscreen window loses focus, we need
+ this or else the raise wont be able to raise above the to-lose-focus
+ fullscreen window. */
+ {
+ ObAction *a;
+ GSList *l = NULL;
+
+ a = action_from_string("Raise", OB_USER_ACTION_NONE);
+ g_assert(a);
+ l = g_slist_append(NULL, a);
+
+ action_run(l, self, 0);
+ }
}
gboolean client_focused(ObClient *self)