dont count non-normal windows as parents, in the group too
Dana Jansens danakj@orodu.net
1 files changed,
15 insertions(+),
4 deletions(-)
jump to
M
openbox/client.c
→
openbox/client.c
@@ -2376,10 +2376,21 @@ }
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)