Index: workspace/kwin/geometry.cpp =================================================================== --- workspace/kwin/geometry.cpp (revision 740936) +++ workspace/kwin/geometry.cpp (working copy) @@ -270,9 +270,17 @@ QRect Workspace::clientArea( clientAreaOption opt, const QPoint& p, int desktop ) const { QDesktopWidget *desktopwidget = KApplication::desktop(); - int screen = desktopwidget->isVirtualDesktop() ? desktopwidget->screenNumber( p ) : desktopwidget->primaryScreen(); - if( screen < 0 ) - screen = desktopwidget->primaryScreen(); + int screen = desktopwidget->primaryScreen(); + if (!desktopwidget->isVirtualDesktop()) + { + for (int i = 0; i < desktopwidget->numScreens(); i++) + { + if (screenGeometry(i).contains(p)) + { + screen = i; + } + } + } return clientArea( opt, screen, desktop ); }