summaryrefslogtreecommitdiff
path: root/openbox/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbox/client.c')
-rw-r--r--openbox/client.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/openbox/client.c b/openbox/client.c
index 5686a939..a8a15673 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -202,7 +202,7 @@ void client_manage(Window window, ObPrompt *prompt)
gboolean transient = FALSE;
Rect place, *monitor;
Time launch_time, map_time;
- gint user_time;
+ guint32 user_time;
ob_debug("Managing window: 0x%lx", window);
@@ -3816,12 +3816,15 @@ static void client_present(ObClient *self, gboolean here, gboolean raise,
client_focus(self);
}
-/* this function exists to map to the client_activate message in the ewmh,
- the user arg is unused because nobody uses it correctly anyway. */
+/* this function exists to map to the net_active_window message in the ewmh */
void client_activate(ObClient *self, gboolean here, gboolean raise,
gboolean unshade, gboolean user)
{
- client_present(self, here, raise, unshade);
+ if (user || (self->desktop == DESKTOP_ALL ||
+ self->desktop == screen_desktop))
+ client_present(self, here, raise, unshade);
+ else
+ client_hilite(self, TRUE);
}
static void client_bring_windows_recursive(ObClient *self,