[AppMenu Applet] Map from scene after mapping from global

childAt expects coordinates relative to the item, so we need to mapFromScene before we do that.

BUG: 375535
FIXED-IN: 5.9.1

Differential Revision: https://phabricator.kde.org/D4452
wilder-5.14
Kai Uwe Broulik 9 years ago
parent c85fe82dac
commit 10246712ae
  1. 5
      applets/appmenu/lib/appmenuapplet.cpp

@ -234,8 +234,9 @@ bool AppMenuApplet::eventFilter(QObject *watched, QEvent *event)
}
// FIXME the panel margin breaks Fitt's law :(
const QPointF &localPos = m_buttonGrid->window()->mapFromGlobal(e->globalPos());
auto *item = m_buttonGrid->childAt(localPos.x(), localPos.y());
const QPointF &windowLocalPos = m_buttonGrid->window()->mapFromGlobal(e->globalPos());
const QPointF &buttonGridLocalPos = m_buttonGrid->mapFromScene(windowLocalPos);
auto *item = m_buttonGrid->childAt(buttonGridLocalPos.x(), buttonGridLocalPos.y());
if (!item) {
return false;
}

Loading…
Cancel
Save