Bug 432250 - Wayland: Submenu of panel context menu is displayed as a separate window
Summary: Wayland: Submenu of panel context menu is displayed as a separate window
Status: RESOLVED DUPLICATE of bug 417378
Alias: None
Product: plasmashell
Classification: Plasma
Component: Panel (show other bugs)
Version: 5.19.90
Platform: Kubuntu Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: wayland
Depends on:
Blocks:
 
Reported: 2021-01-28 14:03 UTC by Jan Rathmann
Modified: 2021-02-23 04:26 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.21
Sentry Crash Report:


Attachments
Screenshot of separate menu (680.43 KB, image/png)
2021-01-28 14:03 UTC, Jan Rathmann
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Rathmann 2021-01-28 14:03:32 UTC
Created attachment 135267 [details]
Screenshot of separate menu

STEPS TO REPRODUCE
1. Ensure at least one window is displayed (not minimized!)
2. Rightclick on a panel
3. Hover "Add Panel" with mouse cursor

OBSERVED RESULT
Submenu is displayed as a separate window at top left of the screen, including window decoration. (see screenshot)

EXPECTED RESULT
Submenu is displayed as a normal menu next to "Add Panel"

ADDITIONAL INFORMATION
The bug doesn't seem appear when all windows are minimized.

There is the following terminal output:

qt.qpa.wayland: setGrabPopup called with a parent, QtWaylandClient::QWaylandXdgSurface(0x55733d5214a0) which does not match the current topmost grabbing popup, QtWaylandClient::QWaylandXdgSurface(0x55733e8f41b0) 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

SOFTWARE/OS VERSIONS
Distro: Kubuntu 21.04
KDE Plasma Version: 5.20.90
KDE Frameworks Version: 5.78 
Qt Version: 5.15.2
Comment 1 Bug Janitor Service 2021-01-28 14:36:11 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/604
Comment 2 David Edmundson 2021-01-29 14:14:41 UTC
Git commit 44a072b8e1a2aa0d84f208839e90b24546778d12 by David Edmundson.
Committed on 29/01/2021 at 14:14.
Pushed by davidedmundson into branch 'master'.

Set add panel as an explicit menu of a panel action

This allows QtWayland to guess the parent correctly when displaying the
submenu. It also simplifies some code into a common path.

M  +5    -5    shell/shellcorona.cpp

https://invent.kde.org/plasma/plasma-workspace/commit/44a072b8e1a2aa0d84f208839e90b24546778d12
Comment 3 Nate Graham 2021-01-29 15:26:08 UTC
Git commit 99fdd20197cf5e501e426cb9a46182dffdd96eb1 by Nate Graham, on behalf of David Edmundson.
Committed on 29/01/2021 at 15:26.
Pushed by ngraham into branch 'Plasma/5.21'.

Set add panel as an explicit menu of a panel action

This allows QtWayland to guess the parent correctly when displaying the
submenu. It also simplifies some code into a common path.


(cherry picked from commit 44a072b8e1a2aa0d84f208839e90b24546778d12)

M  +5    -5    shell/shellcorona.cpp

https://invent.kde.org/plasma/plasma-workspace/commit/99fdd20197cf5e501e426cb9a46182dffdd96eb1
Comment 4 Patrick Silva 2021-02-02 16:21:50 UTC
This bug is still reproducible on neon unstable.
Dupe of bug 417378 ?

Operating System: KDE neon Unstable Edition
KDE Plasma Version: 5.21.80
KDE Frameworks Version: 5.79.0
Qt Version: 5.15.2
Graphics Platform: Wayland
Comment 5 Nate Graham 2021-02-02 16:25:58 UTC
Urgh, that. Yeah, I think so.

*** This bug has been marked as a duplicate of bug 417378 ***