diff --git a/src/platformtheme/qdbusmenubar.cpp b/src/platformtheme/qdbusmenubar.cpp --- a/src/platformtheme/qdbusmenubar.cpp +++ b/src/platformtheme/qdbusmenubar.cpp @@ -62,6 +62,12 @@ m_menuAdaptor, &QDBusMenuAdaptor::ItemsPropertiesUpdated); connect(m_menu, &QDBusPlatformMenu::updated, m_menuAdaptor, &QDBusMenuAdaptor::LayoutUpdated); + + // This signal is new in Qt 5.8 but distros might have backported it, hence a runtime look-up + if (m_menu->metaObject()->indexOfSignal("popupRequested(int,uint)") != -1) { + connect(m_menu, SIGNAL(popupRequested(int,uint)), m_menuAdaptor, SIGNAL(ItemActivationRequested(int,uint))); + } + /*Qt 5.7.0 contains a nasty bug * * QMenuBar::setVisible() only checks isNativeMenuBar on OS X