diff --git a/tray/gui/helper.cpp b/tray/gui/helper.cpp index 462ebf9..8d42bf3 100644 --- a/tray/gui/helper.cpp +++ b/tray/gui/helper.cpp @@ -22,7 +22,8 @@ void showViewMenu(const QPoint &position, const QTreeView &view, QMenu &menu) static const auto needsHack = QLibraryInfo::version() < QVersionNumber(6, 2, 3); #endif const QMenu *topLevelWidget; - if (needsHack && (topLevelWidget = qobject_cast(view.topLevelWidget()))) { + if (needsHack && (topLevelWidget = qobject_cast(view.topLevelWidget())) + && (topLevelWidget->windowFlags() & Qt::Popup) == Qt::Popup) { menu.exec(topLevelWidget->mapToGlobal(position)); } else { menu.exec(view.viewport()->mapToGlobal(position));