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

List:       kde-panel-devel
Subject:    D10461: GMenu-DBusMenu-Proxy
From:       Kai Uwe Broulik <noreply () phabricator ! kde ! org>
Date:       2018-02-28 10:52:03
Message-ID: 20180228105203.1.680D6056D2315237 () phabricator ! kde ! org
[Download RAW message or body]

broulik updated this revision to Diff 28255.
broulik edited the test plan for this revision.
broulik added a comment.


  - Split icon mapping into dedicated namespace and extend it a lot
  - Monitor menus right away so we know if there's actually a menu \
                (appmenu-gtk-module always claims to have a menu even if there is \
                none)
  - Expand sections on the fly so ID mapping is correct and updating actions works \
                ("Undo" action in LibreOffice updates fine now)
  - Fall back from menu bar to application menu on the fly (appmenu-gtk-module always \
                announces a menu bar even if the app might only have an app menu)
  - Let "items to be added" also create new sections, fixes switching from \
                LibreOffice Splash to Writer where the menu is replaced entirely
  - Fix updating visible/enabled property of actions at runtime
  - A couple of sanity checks and crash fixes

REPOSITORY
  R120 Plasma Workspace

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D10461?vs=27142&id=28255

REVISION DETAIL
  https://phabricator.kde.org/D10461

AFFECTED FILES
  CMakeLists.txt
  gmenu-dbusmenu-proxy/CMakeLists.txt
  gmenu-dbusmenu-proxy/Messages.sh
  gmenu-dbusmenu-proxy/gdbusmenutypes_p.cpp
  gmenu-dbusmenu-proxy/gdbusmenutypes_p.h
  gmenu-dbusmenu-proxy/gmenudbusmenuproxy.desktop
  gmenu-dbusmenu-proxy/icons.cpp
  gmenu-dbusmenu-proxy/icons.h
  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: rk, rilian, mtallur, ngraham, plasma-devel, ZrenBot, lesliezhai, ali-mohamed, \
jensreuterberg, abetts, sebas, apol, mart


[Attachment #3 (unknown)]

<table><tr><td style="">broulik updated this revision to Diff 28255.<br />broulik \
edited the test plan for this revision. <a \
href="https://phabricator.kde.org/transactions/detail/PHID-XACT-DREV-ejwm6ui3ifytrvr/" \
rel="noreferrer">(Show Details)</a><br />broulik 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><ul \
class="remarkup-list"> <li class="remarkup-list-item">Split icon mapping into \
dedicated namespace and extend it a lot</li> <li class="remarkup-list-item">Monitor \
menus right away so we know if there&#039;s actually a menu (appmenu-gtk-module \
always claims to have a menu even if there is none)</li> <li \
class="remarkup-list-item">Expand sections on the fly so ID mapping is correct and \
updating actions works (&quot;Undo&quot; action in LibreOffice updates fine now)</li> \
<li class="remarkup-list-item">Fall back from menu bar to application menu on the fly \
(appmenu-gtk-module always announces a menu bar even if the app might only have an \
app menu)</li> <li class="remarkup-list-item">Let &quot;items to be added&quot; also \
create new sections, fixes switching from LibreOffice Splash to Writer where the menu \
is replaced entirely</li> <li class="remarkup-list-item">Fix updating visible/enabled \
property of actions at runtime</li> <li class="remarkup-list-item">A couple of sanity \
checks and crash fixes</li> </ul></div></div><br /><div><strong>CHANGES TO TEST \
PLAN</strong><div><div style="white-space: pre-wrap; color: #74777D;"><div \
style="padding: 8px 0;">...</div>Tested `gedit<span style="padding: 0 2px; color: \
#333333; background: rgba(251, 175, 175, .7);">` which supposedly only has a menu bar \
on Ubuntu</span><br /> {F5707116}<span style="padding: 0 2px; color: #333333; \
background: rgba(151, 234, 151, .6);"><br /> Tested LibreOffice 6 with `gtk3_kde5` \
platform plugin, should just work with regular GTK3 plugin; also works with `gtk` and \
`gtk3` plugins when you have appmenu-gtk-module. Out of the box with gtk3 action IDs \
are randomly assigned so I cannot map them to any icons, however, with \
appmenu-gtk-module I can.</span><br /> <span style="padding: 0 2px; color: #333333; \
background: rgba(251, 175, 175, .7);">Tested </span>LibreOffice <span style="padding: \
0 2px; color: #333333; background: rgba(251, 175, 175, .7);">6 with `</span><span \
style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">vanilla \
</span>gtk3_kde5<span style="padding: 0 2px; color: #333333; background: rgba(251, \
175, 175, .7);">` platform plugin, should just work with regular GTK3 \
plugin</span><br /> {F5707119}<span style="padding: 0 2px; color: #333333; \
background: rgba(151, 234, 151, .6);"><br /> LibreOffice with \
appmenu-gtk-module</span><br /> <span style="padding: 0 2px; color: #333333; \
background: rgba(251, 175, 175, .7);">I won&#039;t be able to add any icons to \
LibreOffice&#039;s menus as the action names are random ids assigned by it. In gedit \
I get some names like &quot;open&quot; and &quot;save&quot; I could map on our \
side</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, \
151, .6);">{F5733656}</span><br /> <br />
Applications not having a dedicated menu bar will at least show the top panel menu \
with Settings, About, and Help<br /> {F5707121}<span style="padding: 0 2px; color: \
#333333; background: rgba(251, 175, 175, .7);"><br /> <br />
Does not work with Gimp or Inkscape as they aren&#039;t GTK3-based.</span><br />
<br />
<span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, \
.7);">Out of the box it seems to work with most GTK3 apps (tried shotwell, \
gnome-builder, gnote, evince) and you get the &quot;application menu&quot; with few \
items like New Window, Options, Quit.</span><span style="padding: 0 2px; color: \
#333333; background: rgba(151, 234, 151, .6);">Works with Gimp or Inkscape if you \
have appmenu-gtk-module (there&#039;s GTK2 and GTK3 variants) installed and \
`GTK_MODULES=appmenu-gtk-module` environment variable set (or unity-gtk-module for \
pre-Gnome Ubuntu)</span><br /> <span style="padding: 0 2px; color: #333333; \
background: rgba(251, 175, 175, .7);">Together with appmenu-gtk-module and \
`GTK_MODULES=appmenu-gtk-module` I managed to get a full menu bar in pluma \
(editor),</span><span style="padding: 0 2px; color: #333333; background: rgba(151, \
234, 151, .6);">{F5733658}</span></div></div></div><br \
/><div><strong>REPOSITORY</strong><div><div>R120 Plasma \
Workspace</div></div></div><br /><div><strong>CHANGES SINCE LAST \
UPDATE</strong><div><a \
href="https://phabricator.kde.org/D10461?vs=27142&amp;id=28255" \
rel="noreferrer">https://phabricator.kde.org/D10461?vs=27142&amp;id=28255</a></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>AFFECTED FILES</strong><div><div>CMakeLists.txt<br /> \
gmenu-dbusmenu-proxy/CMakeLists.txt<br /> gmenu-dbusmenu-proxy/Messages.sh<br />
gmenu-dbusmenu-proxy/gdbusmenutypes_p.cpp<br />
gmenu-dbusmenu-proxy/gdbusmenutypes_p.h<br />
gmenu-dbusmenu-proxy/gmenudbusmenuproxy.desktop<br />
gmenu-dbusmenu-proxy/icons.cpp<br />
gmenu-dbusmenu-proxy/icons.h<br />
gmenu-dbusmenu-proxy/main.cpp<br />
gmenu-dbusmenu-proxy/menu.cpp<br />
gmenu-dbusmenu-proxy/menu.h<br />
gmenu-dbusmenu-proxy/menuproxy.cpp<br />
gmenu-dbusmenu-proxy/menuproxy.h</div></div></div><br /><div><strong>To: \
</strong>broulik, Plasma<br /><strong>Cc: </strong>rk, rilian, mtallur, ngraham, \
plasma-devel, ZrenBot, 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