[KRunner] In doubt use primary screen for view position

Seems this logic of screen with cursor may break with XRandR scaling.

BUG: 375574
FIXED-IN: 5.8.6
wilder-5.14
Kai Uwe Broulik 9 years ago
parent 6f99f0dd99
commit b0b31dee60
  1. 16
      krunner/view.cpp

@ -286,18 +286,14 @@ void View::resetScreenPos()
void View::positionOnScreen()
{
QScreen* shownOnScreen = 0;
if (QGuiApplication::screens().count() <= 1) {
shownOnScreen = QGuiApplication::primaryScreen();
} else {
Q_FOREACH (QScreen* screen, QGuiApplication::screens()) {
if (screen->geometry().contains(QCursor::pos(screen))) {
shownOnScreen = screen;
break;
}
QScreen *shownOnScreen = QGuiApplication::primaryScreen();
Q_FOREACH (QScreen* screen, QGuiApplication::screens()) {
if (screen->geometry().contains(QCursor::pos(screen))) {
shownOnScreen = screen;
break;
}
}
Q_ASSERT(shownOnScreen);
setScreen(shownOnScreen);
const QRect r = shownOnScreen->availableGeometry();

Loading…
Cancel
Save