X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Fclient.c;h=7b1b9955a9b47ac67a947e3ac7d646c9d70e5e01;hb=d03c1afac676c612c2d70584ceb4101607ac4c7e;hp=2361f9379de603599af50924ea5d1859e7058818;hpb=4c1641bfc704f17df6e0acb8bdeb20e877b377ad;p=chaz%2Fopenbox diff --git a/openbox/client.c b/openbox/client.c index 2361f937..7b1b9955 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -255,6 +255,8 @@ void client_manage(Window window) /* update the focus lists */ focus_order_add_new(self); + stacking_add(CLIENT_AS_WINDOW(self)); + /* focus the new window? */ if (ob_state() != OB_STATE_STARTING && config_focus_new && /* note the check against Type_Normal/Dialog, not client_normal(self), @@ -263,14 +265,10 @@ void client_manage(Window window) (self->type == OB_CLIENT_TYPE_NORMAL || self->type == OB_CLIENT_TYPE_DIALOG)) { - if (self->desktop != screen_desktop) - { + if (self->desktop != screen_desktop) { /* activate the window */ - stacking_add(CLIENT_AS_WINDOW(self)); activate = TRUE; - } - else - { + } else { gboolean group_foc = FALSE; if (self->group) { @@ -293,20 +291,10 @@ void client_manage(Window window) !client_normal(focus_client)) { /* activate the window */ - stacking_add(CLIENT_AS_WINDOW(self)); activate = TRUE; } - else - { - /* try to not get in the way */ - stacking_add_nonintrusive(CLIENT_AS_WINDOW(self)); - } } } - else - { - stacking_add(CLIENT_AS_WINDOW(self)); - } dispatch_client(Event_Client_New, self, 0, 0); @@ -324,6 +312,11 @@ void client_manage(Window window) but do focus it. */ if (activate) client_focus(self); + /* client_activate does this but we aret using it so we have to do it + here as well */ + if (screen_showing_desktop) + screen_show_desktop(FALSE); + /* update the list hints */ client_set_list();