davidedmundson created this revision. davidedmundson added a reviewer: Plasma. Restricted Application added a project: Plasma. Restricted Application added a subscriber: plasma-devel.
REVISION SUMMARY libdbusmenu-qt had an awful bug in it that meant it would spawn a nested event loop when updating a menu. In order to fix StatusNotifierItem I ended up making a fork of the 3 small classes that we needed and applying a fix, whilst we waited for upstream. We also were including a complicated library+plugin that handled import and exporting, just to do importing which is rather pointless. When appmenu support was restored, we ended up re-linking the original dbusmenu-qt library. The original still had the same bug, manifesting in a whole new way of Kate's bookmarks menu automatically closing when you click on it. This patch shares the same libdbusmenu-qt lib we have for the SNI dataengine with the one for appmenu. TEST PLAN Everything compiles after removing the find package for old libdbusmenu-qt Menu in the Plasma applet works a lot better, and doesn't have the bug of menus randomly closing. REPOSITORY R120 Plasma Workspace BRANCH master REVISION DETAIL https://phabricator.kde.org/D3926 AFFECTED FILES CMakeLists.txt applets/appmenu/lib/appmenuapplet.cpp applets/appmenu/plugin/CMakeLists.txt applets/appmenu/plugin/appmenumodel.cpp appmenu/CMakeLists.txt appmenu/appmenu.cpp appmenu/verticalmenu.cpp dataengines/statusnotifieritem/CMakeLists.txt dataengines/statusnotifieritem/libdbusmenuqt/README dataengines/statusnotifieritem/libdbusmenuqt/dbusmenuimporter.cpp dataengines/statusnotifieritem/libdbusmenuqt/dbusmenuimporter.h dataengines/statusnotifieritem/libdbusmenuqt/dbusmenushortcut_p.cpp dataengines/statusnotifieritem/libdbusmenuqt/dbusmenushortcut_p.h dataengines/statusnotifieritem/libdbusmenuqt/dbusmenutypes_p.cpp dataengines/statusnotifieritem/libdbusmenuqt/dbusmenutypes_p.h dataengines/statusnotifieritem/libdbusmenuqt/utils.cpp dataengines/statusnotifieritem/libdbusmenuqt/utils_p.h libdbusmenuqt/CMakeLists.txt libdbusmenuqt/README libdbusmenuqt/dbusmenuimporter.cpp libdbusmenuqt/dbusmenuimporter.h libdbusmenuqt/dbusmenushortcut_p.cpp libdbusmenuqt/dbusmenushortcut_p.h libdbusmenuqt/dbusmenutypes_p.cpp libdbusmenuqt/dbusmenutypes_p.h libdbusmenuqt/utils.cpp libdbusmenuqt/utils_p.h EMAIL PREFERENCES https://phabricator.kde.org/settings/panel/emailpreferences/ To: davidedmundson, #plasma Cc: plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas