[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-panel-devel
Subject:    D10461: GMenu-DBusMenu-Proxy
From:       Konstantin <noreply () phabricator ! kde ! org>
Date:       2018-02-14 2:39:05
Message-ID: 20180214023905.1.2EF7CC6DF7B93201 () phabricator ! kde ! org
[Download RAW message or body]

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


[Attachment #3 (unknown)]

<table><tr><td style="">rilian added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: \
right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: \
#F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: \
inline-block; border: 1px solid rgba(71,87,120,.2);" \
href="https://phabricator.kde.org/D10461" rel="noreferrer">View \
Revision</a></tr></table><br /><div><div><p>Hello, I am Konstantin, developer of \
vala-panel-appmenu. I have some comments about your application.</p>

<p>MenuModel protocol consitsts for 5 items:</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" \
data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px \
&quot;Menlo&quot;, &quot;Consolas&quot;, &quot;Monaco&quot;, monospace; padding: \
12px; margin: 0; background: rgba(71, 87, 120, 0.08);">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)</pre></div>

<p>And 3 providers of actions. Actions is required to get menu react on user \
changes.Providers:</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" \
data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px \
&quot;Menlo&quot;, &quot;Consolas&quot;, &quot;Monaco&quot;, monospace; padding: \
12px; margin: 0; background: rgba(71, 87, 120, 0.08);">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.</pre></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R120 \
Plasma Workspace</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a \
href="https://phabricator.kde.org/D10461" \
rel="noreferrer">https://phabricator.kde.org/D10461</a></div></div><br \
/><div><strong>To: </strong>broulik, Plasma<br /><strong>Cc: </strong>rilian, \
mtallur, ngraham, plasma-devel, ZrenBot, progwolff, lesliezhai, ali-mohamed, \
jensreuterberg, abetts, sebas, apol, mart<br /></div>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic