all repos — openbox @ e75ead70a6d98bd7e368c5844c05d2f85f275f65

openbox fork - make it a bit more like ryudo

simple cleanups for the client_iconify function.
also dont follow into other groups when searching up the transient_for tree
Dana Jansens danakj@orodu.net
commit

e75ead70a6d98bd7e368c5844c05d2f85f275f65

parent

16e7aac633ceb328bc34845f749d3d224062d61a

1 files changed, 5 insertions(+), 8 deletions(-)

jump to
M openbox/client.copenbox/client.c

@@ -1598,6 +1598,8 @@ }

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 @@ for (it = self->group->members; it; it = it->next) {

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 @@ dispatch_client(iconic ? Event_Client_Unmapped : Event_Client_Mapped,

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)