<table><tr><td style="">broulik updated the summary for this revision. <a href="https://phabricator.kde.org/transactions/detail/PHID-XACT-DREV-ds56ffc3ihee3ts/" rel="noreferrer">(Show Details)</a><br />broulik updated the test plan for this revision. <a href="https://phabricator.kde.org/transactions/detail/PHID-XACT-DREV-6qbagxghjlk774s/" rel="noreferrer">(Show Details)</a><br />broulik updated this revision to Diff 7570.
</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/D3086" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>EDIT DETAILS</strong><div><div style="white-space: pre-wrap; color: #74777D;"><div style="padding: 8px 0;">...</div>Massively cleanup KAppMenu by removing outdated and unused code. The global menu has been removed as it will eventually be provided by a plasmoid (famous last words).<span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);"> Also many of the workarounds (like the unity about to show hack) have been removed, unfortunately the issue with Firefox seems to be still the case.<br />
<br />
The biggest change, however, is that instead of relying on Windows IDs (which won't work on Wayland) we always speak of DBus service name and object path which will be added as properties to the respective windows. To support 3rd party applications, we also set the property in the RegisterWindow function.</span> <span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">Also many of the workarounds (like the unity about to show hack) have been removed</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">This way KWin doesn't need any fallback code</span> and <span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">will only get re-introduced if they are in fact still neccessary</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">can just rely on those properties</span>.</div></div></div><br /><div><strong>EDIT DETAILS</strong><div><div style="white-space: pre-wrap; color: #74777D;"><div style="padding: 8px 0;">...</div>Applications like Kwrite, Dolphin, as well as VLC start exporting their manus on DBus now. The "showMenu" method on the org.kde.<span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">kappmenu dbus interface can</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">kappmenu dbus interface can be used to show the application menu. The menu button also shows up for Chrome and Firefox.<br />
<br />
The about to show hack seems to still</span> be <span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">used to show the application menu.<br />
<br />
The about to show hack seemed to have been neccessary for the global menu which is updated as soon as the</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">neccessary for Firefox - as soon as opening a sub menu it closes in Firefox.</span> <span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">active menu changes;</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">Needs further investigation.<br />
<br />
I also just noticed that triggering actions in the menu doesn't actually work</span> right now <span style="padding: 0 2px; color: #802b2b; background: rgba(251, 175, 175, .7);">calling showMenu does work with Firefox.<br />
</span><span style="padding: 0 2px; color: #3e6d35; background: rgba(151, 234, 151, .6);">after the migration away from window IDs :)</span></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>rPLASMAWORKSPACE Plasma Workspace</div></div></div><br /><div><strong>CHANGES SINCE LAST UPDATE</strong><div><a href="https://phabricator.kde.org/D3086?vs=7461&id=7570" rel="noreferrer">https://phabricator.kde.org/D3086?vs=7461&id=7570</a></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D3086" rel="noreferrer">https://phabricator.kde.org/D3086</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>appmenu/CMakeLists.txt<br />
appmenu/appmenu.cpp<br />
appmenu/appmenu.h<br />
appmenu/appmenu_dbus.cpp<br />
appmenu/appmenu_dbus.h<br />
appmenu/glowbar.cpp<br />
appmenu/glowbar.h<br />
appmenu/kdbusimporter.h<br />
appmenu/menubar.cpp<br />
appmenu/menubar.h<br />
appmenu/menubutton.cpp<br />
appmenu/menubutton.h<br />
appmenu/menuimporter.cpp<br />
appmenu/menuimporter.h<br />
appmenu/menuwidget.cpp<br />
appmenu/menuwidget.h<br />
appmenu/org.kde.kappmenu.xml<br />
appmenu/shadows.cpp<br />
appmenu/shadows.h<br />
appmenu/topmenubar.cpp<br />
appmenu/topmenubar.h<br />
appmenu/verticalmenu.h</div></div></div><br /><div><strong>EMAIL PREFERENCES</strong><div><a href="https://phabricator.kde.org/settings/panel/emailpreferences/" rel="noreferrer">https://phabricator.kde.org/settings/panel/emailpreferences/</a></div></div><br /><div><strong>To: </strong>broulik, Plasma<br /><strong>Cc: </strong>plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas<br /></div>