]> Dogcows Code - chaz/openbox/blobdiff - openbox/client.c
adjust what gets raised on map a bit, a little less selective.
[chaz/openbox] / openbox / client.c
index 19a10c21dd0f983643c58e0a3c78ca21419a7afd..0f2519cff751e82a36324c57f76995e167e7011a 100644 (file)
@@ -253,7 +253,8 @@ void client_manage(Window window)
     focus_order_add_new(self);
 
     /* focus the new window? */
-    if (ob_state != State_Starting && config_focus_new) {
+    if (ob_state != State_Starting && config_focus_new &&
+        (self->type == Type_Normal || self->type == Type_Dialog)) {
         gboolean group_foc = FALSE;
         
         if (self->group) {
@@ -268,11 +269,9 @@ void client_manage(Window window)
         /* note the check against Type_Normal/Dialog, not client_normal(self),
            which would also include other types. in this case we want more
            strict rules for focus */
-        if (((self->type == Type_Normal ||
-              (self->type == Type_Dialog &&
-               (group_foc ||
-                (!self->transient_for && (!self->group ||
-                                          !self->group->members->next)))))) ||
+        if ((group_foc ||
+             (!self->transient_for && (!self->group ||
+                                       !self->group->members->next))) ||
             client_search_focus_tree_full(self) ||
             !focus_client ||
             !client_normal(focus_client)) {
@@ -2025,7 +2024,7 @@ void client_set_desktop(Client *self, guint target, gboolean donthide)
 
     if (target == self->desktop) return;
   
-    g_message("Setting desktop %u", target);
+    g_message("Setting desktop %u", target+1);
 
     g_assert(target < screen_num_desktops || target == DESKTOP_ALL);
 
@@ -2237,7 +2236,7 @@ gboolean client_focus(Client *self)
     /* choose the correct target */
     self = client_focus_target(self);
 
-    if (self->desktop != DESKTOP_ALL && self->desktop != screen_desktop) {
+    if (!self->frame->visible) {
         /* update the focus lists */
         focus_order_to_top(self);
         return FALSE;
This page took 0.023419 seconds and 4 git commands to generate.