summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@nokia.com>2012-06-20 19:57:39 +0200
committerJens Bache-Wiig <jens.bache-wiig@nokia.com>2012-06-21 11:59:16 +0200
commit42118c084faae1eebd99a5f87c150f88fb532a0e (patch)
tree256fe6c36d2c50e49fec85eb31b1a086938be0b5
parentfcc66acff4226881ac90e65b96f3efc4429d7eaa (diff)
downloadqtquickcontrols-42118c084faae1eebd99a5f87c150f88fb532a0e.tar.gz
Get rid of activeWindow hack in menu
Change-Id: Ia5fcbbd7cf910594ed0b1d3ba5da07900aa2b7a0 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@nokia.com>
-rw-r--r--src/qtmenu.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/qtmenu.cpp b/src/qtmenu.cpp
index 39cdc054..fcd3f885 100644
--- a/src/qtmenu.cpp
+++ b/src/qtmenu.cpp
@@ -114,17 +114,15 @@ void QtMenu::showPopup(qreal x, qreal y, int atActionIndex)
atAction = m_qmenu->actions()[atActionIndex];
// x,y are in view coordinates, QMenu expects screen coordinates
- // ### activeWindow hack
int menuBarHeight = 0;
- QWindow *window = QGuiApplication::focusWindow();
- QTopLevelWindow *tw = qobject_cast<QTopLevelWindow*>(window);
+ QTopLevelWindow *tw = qobject_cast<QTopLevelWindow*>(canvas());
if (tw) {
QMenuBar *menuBar = tw->menuBar();
menuBarHeight = menuBar->height();
}
- int windowFrameHeight = window->frameMargins().top();
- QPoint screenPosition = window->mapToGlobal(QPoint(x, y+menuBarHeight-windowFrameHeight));
+ int windowFrameHeight = canvas()->frameMargins().top();
+ QPoint screenPosition = canvas()->mapToGlobal(QPoint(x, y+menuBarHeight-windowFrameHeight));
setHoveredIndex(m_selectedIndex);
m_qmenu->popup(screenPosition, atAction);