From 07126124c9242a5a20883c3145464730e50afe94 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Tue, 8 Dec 2009 11:32:40 -0500 Subject: 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. --- openbox/client.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'openbox/client.c') 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); -- cgit v1.2.3