X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fclient.c;h=3b66a836f629d17b8903fa0546e68ee639b8bcda;hb=13df16a6815594821e94b9764d152ecc293bc71c;hp=52dfaaa3aa1434d15c07e9eacb5bfefdc9b92a89;hpb=f506cbceae9e3d41f1e6e09d7c5e83ab3935adf9;p=chaz%2Fopenbox diff --git a/openbox/client.c b/openbox/client.c index 52dfaaa3..3b66a836 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -2143,9 +2143,11 @@ static void client_change_wm_state(ObClient *self) old = self->wmstate; - if (self->shaded || !self->frame->visible) + if (self->shaded || self->iconic || + (self->desktop != DESKTOP_ALL && self->desktop != screen_desktop)) + { self->wmstate = IconicState; - else + } else self->wmstate = NormalState; if (old != self->wmstate) { @@ -2303,23 +2305,6 @@ gboolean client_should_show(ObClient *self) return FALSE; if (client_normal(self) && screen_showing_desktop) return FALSE; - /* - if (self->transient_for) { - if (self->transient_for != OB_TRAN_GROUP) - return client_should_show(self->transient_for); - else { - GSList *it; - - for (it = self->group->members; it; it = g_slist_next(it)) { - ObClient *c = it->data; - if (c != self && !c->transient_for) { - if (client_should_show(c)) - return TRUE; - } - } - } - } - */ if (self->desktop == screen_desktop || self->desktop == DESKTOP_ALL) return TRUE;