let transients take focus when anything in the transient tree _or the group_ is focused
This commit is contained in:
parent
15fb1bde54
commit
7a13f91875
1 changed files with 12 additions and 13 deletions
|
@ -2367,22 +2367,21 @@ ObClient *client_search_focus_tree(ObClient *self)
|
|||
|
||||
ObClient *client_search_focus_tree_full(ObClient *self)
|
||||
{
|
||||
if (self->transient_for) {
|
||||
if (self->transient_for != OB_TRAN_GROUP) {
|
||||
return client_search_focus_tree_full(self->transient_for);
|
||||
} else {
|
||||
GSList *it;
|
||||
ObClient *c;
|
||||
|
||||
if (self->transient_for && self->transient_for != OB_TRAN_GROUP) {
|
||||
if ((c = client_search_focus_tree_full(self->transient_for)))
|
||||
return c;
|
||||
}
|
||||
|
||||
for (it = self->group->members; it; it = g_slist_next(it)) {
|
||||
if (it->data != self) {
|
||||
ObClient *c = it->data;
|
||||
|
||||
c = it->data;
|
||||
if (client_focused(c)) return c;
|
||||
if ((c = client_search_focus_tree(it->data))) return c;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* this function checks the whole tree, the client_search_focus_tree
|
||||
does not, so we need to check this window */
|
||||
|
|
Loading…
Reference in a new issue