X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=openbox%2Fclient.c;h=4b65b0d02a439b78f52fe509d43588c592823c04;hb=580795fe6a4b5d070f01065b309f1789cf0d0dbb;hp=055558e2b03868f3c4d214a2b6b5e1bf6942329c;hpb=16e7aac633ceb328bc34845f749d3d224062d61a;p=chaz%2Fopenbox diff --git a/openbox/client.c b/openbox/client.c index 055558e2..4b65b0d0 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -1598,6 +1598,8 @@ void client_fullscreen(Client *self, gboolean fs, gboolean savearea) void client_iconify(Client *self, gboolean iconic, gboolean curdesk) { + GSList *it; + /* move up the transient chain as far as possible first if deiconifying */ if (!iconic) while (self->transient_for) { @@ -1615,8 +1617,7 @@ void client_iconify(Client *self, gboolean iconic, gboolean curdesk) Client *c = it->data; if (c != self && c->transient_for->iconic != iconic && - (c->transient_for != TRAN_GROUP || - c->group != self->group)) { + c->transient_for != TRAN_GROUP) { self = it->data; break; } @@ -1652,12 +1653,8 @@ void client_iconify(Client *self, gboolean iconic, gboolean curdesk) self, 0, 0); /* iconify all transients */ - if (self->transients) { - GSList *it; - - for (it = self->transients; it != NULL; it = it->next) - if (it->data != self) client_iconify(it->data, iconic, curdesk); - } + for (it = self->transients; it != NULL; it = it->next) + if (it->data != self) client_iconify(it->data, iconic, curdesk); } void client_maximize(Client *self, gboolean max, int dir, gboolean savearea)