Merge branch 'backport' into work
[mikachu/openbox.git] / openbox / client.c
index 5686a93..a8a1567 100644 (file)
@@ -202,7 +202,7 @@ void client_manage(Window window, ObPrompt *prompt)
     gboolean transient = FALSE;
     Rect place, *monitor;
     Time launch_time, map_time;
     gboolean transient = FALSE;
     Rect place, *monitor;
     Time launch_time, map_time;
-    gint user_time;
+    guint32 user_time;
 
     ob_debug("Managing window: 0x%lx", window);
 
 
     ob_debug("Managing window: 0x%lx", window);
 
@@ -3816,12 +3816,15 @@ static void client_present(ObClient *self, gboolean here, gboolean raise,
     client_focus(self);
 }
 
     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)
 {
 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,
 }
 
 static void client_bring_windows_recursive(ObClient *self,