it's possible to create qmenus that don't have a parent, tough if a qmenu is created without a parent and a qaction belonging to another qmenu has setMenu calledon this one, visually one menu should be transientparent of the other, but this doesn't happen unless specified explicitly. in wayland the menu will be mispositioned as wl_shell requires menus to have a transientparent.
the assignemnt of transientparent (tough not parent()) should be done automatically for hyerarchies like that.
many existing applications are affected by this
attached a minimal example app that shows the problem
|For Gerrit Dashboard: QTBUG-60932|
|195704,11||Set the QMenu's window transient parent to the causedPopup's window||5.9||qt/qtbase||Status: ABANDONED||0||0|
|200788,4||Fallback to focusWindow as transient parent||5.9||qt/qtwayland||Status: MERGED||+2||0|