don't focus new windows if they appear on another desktop and a relative is not focused
This commit is contained in:
parent
a5c6eb81ad
commit
ac59dd4fe5
1 changed files with 13 additions and 4 deletions
|
@ -471,10 +471,10 @@ void client_manage(Window window)
|
||||||
|
|
||||||
/* if it's on another desktop */
|
/* if it's on another desktop */
|
||||||
else if (!(self->desktop == screen_desktop ||
|
else if (!(self->desktop == screen_desktop ||
|
||||||
self->desktop == DESKTOP_ALL) &&
|
self->desktop == DESKTOP_ALL) &&
|
||||||
/* the timestamp is from before you changed desktops */
|
/* the timestamp is from before you changed desktops */
|
||||||
launch_time && screen_desktop_user_time &&
|
launch_time && screen_desktop_user_time &&
|
||||||
!event_time_after(launch_time, screen_desktop_user_time))
|
!event_time_after(launch_time, screen_desktop_user_time))
|
||||||
{
|
{
|
||||||
activate = FALSE;
|
activate = FALSE;
|
||||||
raise = TRUE;
|
raise = TRUE;
|
||||||
|
@ -526,6 +526,15 @@ void client_manage(Window window)
|
||||||
"Not focusing the window because another window "
|
"Not focusing the window because another window "
|
||||||
"would get the focus anyway\n");
|
"would get the focus anyway\n");
|
||||||
}
|
}
|
||||||
|
else if (!(self->desktop == screen_desktop ||
|
||||||
|
self->desktop == DESKTOP_ALL))
|
||||||
|
{
|
||||||
|
activate = FALSE;
|
||||||
|
raise = TRUE;
|
||||||
|
ob_debug_type(OB_DEBUG_FOCUS,
|
||||||
|
"Not focusing the window because it is on "
|
||||||
|
"another desktop and no relatives are focused ");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!activate) {
|
if (!activate) {
|
||||||
|
|
Loading…
Reference in a new issue