rilian added a comment.
Hello, I am Konstantin, developer of vala-panel-appmenu. I have some comments
about your application.
MenuModel protocol consitsts for 5 items:
AppMenu - with property _GTK_APPMENU_OBJECT_PATH
MenuBar - with property _GTK_MENUBAR_OBJECT_PATH
It is a menu models, it is how menu should drawn on screen.
One can be missing, and then incomplete menu should render:
a) If AppMenu is missing, you will miss menu entry with application name
(vala-panel-appmenu renders stub in place of missing AppMenu)
b) If MenuBar is missing, you will miss all menu entries except entry with
application name.
c) If both are missing, you will not see a menu (Protocol is incorrect)
And 3 providers of actions. Actions is required to get menu react on user
changes.Providers:
Application (_GTK_APPLICATION_OBJECT_PATH, prefix app) - it is actions from
all application (not bound to a particular window)
Window (_GTK_WINDOW_OBJECT_PATH, prefix win) - it is actions from current
window, as it set by a developer of application
Unity (_UNITY_OBJECT_PATH, prefix unity) - it is non-standard, but widely
used action path for set a Unity actions (when window actions is not supported
by app developer). It is object path supported by unity-gtk-module and
appmenu-gtk-module.
If you implement this, you will get GTK2 menu for free.
If any of this are missing, this menu items should be rendered as disabled.
But if menu using actions only from one category - it can be used as a normal
menu. Setting this all is not required for functional menu. One will be enough,
if menu is using actions only from one group.
REPOSITORY
R120 Plasma Workspace
REVISION DETAIL
https://phabricator.kde.org/D10461
To: broulik, #plasma
Cc: rilian, mtallur, ngraham, plasma-devel, ZrenBot, progwolff, lesliezhai,
ali-mohamed, jensreuterberg, abetts, sebas, apol, mart