diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-09-26 17:46:49 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-09-26 17:46:49 +0000 |
| commit | fb341869b1f1d82db06b7c92cacff7db58633344 (patch) | |
| tree | 0c823f11136511559e22b749f6a576bddebb21b7 /openbox | |
| parent | 1241a0cf0da3b7aee0e5df26e74fc517021ff2ba (diff) | |
use an action only for Raise
Diffstat (limited to 'openbox')
| -rw-r--r-- | openbox/client.c | 20 |
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) |
