don't focus new windows if they appear on another desktop and a relative is not focused

This commit is contained in:
Dana Jansens 2007-08-04 12:57:34 -04:00
parent a5c6eb81ad
commit ac59dd4fe5

View file

@ -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) {