add group transients when setting up the group

This commit is contained in:
Dana Jansens 2003-04-15 16:52:14 +00:00
parent 5898c68530
commit 4eb80a81cf

View file

@ -1015,6 +1015,7 @@ void client_update_wmhints(Client *self)
{ {
XWMHints *hints; XWMHints *hints;
gboolean ur = FALSE; gboolean ur = FALSE;
GSList *it;
/* assume a window takes input if it doesnt specify */ /* assume a window takes input if it doesnt specify */
self->can_focus = TRUE; self->can_focus = TRUE;
@ -1042,6 +1043,13 @@ void client_update_wmhints(Client *self)
if (hints->window_group != None) if (hints->window_group != None)
self->group = group_add(hints->window_group, self); self->group = group_add(hints->window_group, self);
/* add other transients of the group that are already set up */
for (it = self->group->members; it; it = it->next)
if (it->data != self &&
((Client*)it->data)->transient_for == TRAN_GROUP)
self->transients = g_slist_append(self->transients,
it->data);
/* because the self->transient flag wont change from this call, /* because the self->transient flag wont change from this call,
we don't need to update the window's type and such, only its we don't need to update the window's type and such, only its
transient_for, and the transients lists of other windows in the transient_for, and the transients lists of other windows in the