diff options
| author | Dana Jansens <danakj@orodu.net> | 2009-12-08 11:32:40 -0500 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2009-12-08 13:56:37 -0500 |
| commit | 07126124c9242a5a20883c3145464730e50afe94 (patch) | |
| tree | 89124d70c3b3cb7d3df85618a8f273fb5f731df0 /openbox/client.c | |
| parent | 11ecb7d2199d06b2929ba7e5d3c92c021038a0cc (diff) | |
Fix client_activate() to work for internal Openbox menus
client_activate() is a helpful way to focus a window on another desktop,
but only Openbox is allowed to do such things, user messages cannot.
Diffstat (limited to 'openbox/client.c')
| -rw-r--r-- | openbox/client.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/openbox/client.c b/openbox/client.c index 91693f99..ecb4aafe 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -3929,14 +3929,15 @@ static void client_present(ObClient *self, gboolean here, gboolean raise, } /* this function exists to map to the net_active_window message in the ewmh */ -void client_activate(ObClient *self, gboolean here, gboolean raise, +void client_activate(ObClient *self, gboolean desktop, gboolean raise, gboolean unshade, gboolean user) { - if ((user && (self->desktop == DESKTOP_ALL || + if ((user && (desktop || + self->desktop == DESKTOP_ALL || self->desktop == screen_desktop)) || client_can_steal_focus(self, event_curtime, CurrentTime)) { - client_present(self, here, raise, unshade); + client_present(self, FALSE, raise, unshade); } else client_hilite(self, TRUE); |
