steamcompmgr: prefer to focus windows without SKIP_{TASKBAR,PAGER}
Closes: https://github.com/Plagman/gamescope/issues/87
This commit is contained in:
parent
0275e7839d
commit
0beb34b9d5
1 changed files with 11 additions and 0 deletions
|
@ -1310,6 +1310,12 @@ win_is_override_redirect( win *w )
|
|||
return w->a.override_redirect && !w->ignoreOverrideRedirect;
|
||||
}
|
||||
|
||||
static bool
|
||||
win_skip_taskbar_and_pager( win *w )
|
||||
{
|
||||
return w->skipTaskbar && w->skipPager;
|
||||
}
|
||||
|
||||
// Returns true if a's focus priority > b's.
|
||||
static bool
|
||||
is_focus_priority_greater( win *a, win *b )
|
||||
|
@ -1326,6 +1332,11 @@ is_focus_priority_greater( win *a, win *b )
|
|||
if ( a->wantsUnfocus && !b->wantsUnfocus )
|
||||
return false;
|
||||
|
||||
// Wine sets SKIP_TASKBAR and SKIP_PAGER hints for WS_EX_NOACTIVATE windows.
|
||||
// See https://github.com/Plagman/gamescope/issues/87
|
||||
if ( win_skip_taskbar_and_pager( a ) && !win_skip_taskbar_and_pager ( b ) )
|
||||
return false;
|
||||
|
||||
if ( a->damage_sequence < b->damage_sequence )
|
||||
return false;
|
||||
|
||||
|
|
Loading…
Reference in a new issue