don't fall back focus to omnipresent windows
This commit is contained in:
parent
c80b496bf4
commit
83d987d9ab
1 changed files with 5 additions and 3 deletions
|
@ -242,13 +242,15 @@ ObClient* focus_fallback_target(gboolean allow_refocus, ObClient *old)
|
||||||
focus off to nothing
|
focus off to nothing
|
||||||
2. it is validated. if the window is about to disappear, then
|
2. it is validated. if the window is about to disappear, then
|
||||||
don't try focus it.
|
don't try focus it.
|
||||||
3. it is visible on the screen right now.
|
3. it is visible on the current desktop. this ignores
|
||||||
4. it is a normal type window, don't fall back onto a dock or
|
omnipresent windows, which are problematic in their own rite.
|
||||||
|
4. it's not iconic
|
||||||
|
5. it is a normal type window, don't fall back onto a dock or
|
||||||
a splashscreen or a desktop window (save the desktop as a
|
a splashscreen or a desktop window (save the desktop as a
|
||||||
backup fallback though)
|
backup fallback though)
|
||||||
*/
|
*/
|
||||||
if (client_can_focus(c) && client_validate(c) &&
|
if (client_can_focus(c) && client_validate(c) &&
|
||||||
client_should_show(c))
|
c->desktop == screen_desktop && !c->iconic)
|
||||||
{
|
{
|
||||||
if (client_normal(c)) {
|
if (client_normal(c)) {
|
||||||
ob_debug("found in focus order\n");
|
ob_debug("found in focus order\n");
|
||||||
|
|
Loading…
Reference in a new issue