broulik created this revision. broulik added a reviewer: Plasma. Restricted Application added a project: Plasma. Restricted Application added a subscriber: plasma-devel. broulik requested review of this revision.
REVISION SUMMARY This application finds windows using GTK GMenu DBus interfaces [1] and forwards them through DBusMenu. This way no adjustments in Plasma are needed. [1] https://wiki.gnome.org/Projects/GLib/GApplication/DBusAPI#org.gtk.Menus TEST PLAN Branch `broulik/gmenu-dbusmenu-proxy` of plasma-workspace Tested `gedit` which supposedly only has a menu bar on Ubuntu, toggle actions (e.g. "Full screen" and "Overwrite mode" don't work right now) F5707116: Screenshot_20180212_143407.png <https://phabricator.kde.org/F5707116> Tested LibreOffice 6 with `gtk3_kde5` platform plugin, should just work with regular GTK3 plugin F5707119: Screenshot_20180212_143237.png <https://phabricator.kde.org/F5707119> I won't be able to add any icons to LibreOffice's menus as the action names are random ids assigned by it. In gedit I get some names like "open" and "save" I could map on our side Applications not having a dedicated menu bar will at least show the top panel menu with Settings, About, and Help F5707121: Screenshot_20180212_143839.png <https://phabricator.kde.org/F5707121> Does not work with Gimp or Inkscape as they aren't GTK3-based. REPOSITORY R120 Plasma Workspace REVISION DETAIL https://phabricator.kde.org/D10461 AFFECTED FILES CMakeLists.txt gmenu-dbusmenu-proxy/CMakeLists.txt gmenu-dbusmenu-proxy/gdbusmenutypes_p.cpp gmenu-dbusmenu-proxy/gdbusmenutypes_p.h gmenu-dbusmenu-proxy/gmenudbusmenuproxy.desktop gmenu-dbusmenu-proxy/main.cpp gmenu-dbusmenu-proxy/menu.cpp gmenu-dbusmenu-proxy/menu.h gmenu-dbusmenu-proxy/menuproxy.cpp gmenu-dbusmenu-proxy/menuproxy.h To: broulik, #plasma Cc: plasma-devel, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart