only cycle to visible windows
This commit is contained in:
parent
cb71c993e5
commit
3505a866fe
1 changed files with 4 additions and 2 deletions
|
@ -161,7 +161,9 @@ void focus_fallback(FallbackType type)
|
||||||
|
|
||||||
for (it = focus_order[screen_desktop]; it != NULL; it = it->next)
|
for (it = focus_order[screen_desktop]; it != NULL; it = it->next)
|
||||||
if (type != Fallback_Unfocusing || it->data != old)
|
if (type != Fallback_Unfocusing || it->data != old)
|
||||||
if (client_normal(it->data) && client_focus(it->data))
|
if (client_normal(it->data) &&
|
||||||
|
((Client*)it->data)->frame->visible &&
|
||||||
|
client_focus(it->data))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* nothing to focus */
|
/* nothing to focus */
|
||||||
|
@ -207,7 +209,7 @@ Client *focus_cycle(gboolean forward, gboolean linear, gboolean done,
|
||||||
}
|
}
|
||||||
ft = client_focus_target(it->data);
|
ft = client_focus_target(it->data);
|
||||||
if (ft == it->data && focus_client != ft && client_normal(ft) &&
|
if (ft == it->data && focus_client != ft && client_normal(ft) &&
|
||||||
client_focus(ft)) {
|
ft->frame->visible && client_focus(ft)) {
|
||||||
noreorder++; /* avoid reordering the focus_order */
|
noreorder++; /* avoid reordering the focus_order */
|
||||||
return ft;
|
return ft;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue