From: Dana Jansens Date: Mon, 28 May 2007 02:21:10 +0000 (+0000) Subject: dont count non-normal windows as parents, in the group too X-Git-Url: https://git.brokenzipper.com/gitweb?a=commitdiff_plain;h=2050e99a5f374ec5cc160eca7b8ebeb57e0c00a5;p=chaz%2Fopenbox dont count non-normal windows as parents, in the group too --- diff --git a/openbox/client.c b/openbox/client.c index 0bc4ff90..fa677c5c 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -2376,10 +2376,21 @@ ObClient *client_search_focus_tree_full(ObClient *self) gboolean client_has_parent(ObClient *self) { - return (self->transient_for && - ((self->transient_for != OB_TRAN_GROUP && - client_normal(self->transient_for)) || - (self->group && self->group->members->next))); + if (self->transient_for) { + if (self->transient_for != OB_TRAN_GROUP) { + if (client_normal(self->transient_for)) + return TRUE; + } + else if (self->group) { + GSList *it; + + for (it = self->group->members; it; it = g_slist_next(it)) { + if (it->data != self && client_normal(it->data)) + return TRUE; + } + } + } + return FALSE; } static ObStackingLayer calc_layer(ObClient *self)