fix screen switching for more than two screens

BUG: 264041
FIXED-IN: 4.10
This commit is contained in:
Thomas Lübking 2012-11-23 02:15:58 +01:00
parent 026fe92c7f
commit a6931c774f

View file

@ -517,11 +517,11 @@ void Workspace::setCurrentScreen(int new_screen)
Client* ci = focus_chain[ currentDesktop()].at(i); Client* ci = focus_chain[ currentDesktop()].at(i);
if (!ci->isShown(false) || !ci->isOnCurrentDesktop() || !ci->isOnCurrentActivity()) if (!ci->isShown(false) || !ci->isOnCurrentDesktop() || !ci->isOnCurrentActivity())
continue; continue;
if (!ci->screen() == new_screen) if (ci->screen() == new_screen) {
continue;
get_focus = ci; get_focus = ci;
break; break;
} }
}
if (get_focus == NULL) if (get_focus == NULL)
get_focus = findDesktop(true, currentDesktop()); get_focus = findDesktop(true, currentDesktop());
if (get_focus != NULL && get_focus != mostRecentlyActivatedClient()) if (get_focus != NULL && get_focus != mostRecentlyActivatedClient())