<table><tr><td style="">cblack created this revision.<br />cblack added reviewers: Plasma, KWin.<br />Herald added a project: Plasma.<br />Herald added a subscriber: plasma-devel.<br />cblack requested review of this revision.
</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/D29464">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>Hiding the old menu after the new menu is shown isn't possible on Wayland:</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 "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">qt.qpa.wayland: setGrabPopup called with a parent, QtWaylandClient::QWaylandXdgSurface(0x17dd550) which does not match the current topmost grabbing popup, QtWaylandClient::QWaylandXdgSurface(0x120d9f0) According to the xdg-shell protocol, this is not allowed. The wayland QPA plugin is currently handling it by setting the parent to the topmost grabbing popup. Note, however, that this may cause positioning errors and popups closing unxpectedly because xdg-shell mandate that child popups close before parents</pre></div></div></div><br /><div><strong>TEST PLAN</strong><div><p>Before, Wayland: Trying to open a menu under Wayland while one is already open fails.<br />
After, Wayland: Trying to open a menu under Wayland while one is already open succeeds.<br />
Ensure no regressions on X11.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R120 Plasma Workspace</div></div></div><br /><div><strong>BRANCH</strong><div><div>cblack/appmenu-menu-fix-wayland (branched from master)</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D29464">https://phabricator.kde.org/D29464</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>applets/appmenu/lib/appmenuapplet.cpp</div></div></div><br /><div><strong>To: </strong>cblack, Plasma, KWin<br /><strong>Cc: </strong>plasma-devel, Orage, LeGast00n, The-Feren-OS-Dev, cblack, jraleigh, zachus, fbampaloukas, ragreen, ZrenBot, ngraham, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra, mart<br /></div>