diff options
author | Liang Qi <liang.qi@qt.io> | 2022-01-04 12:30:36 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2022-03-08 13:11:07 +0100 |
commit | 59a5fe99e1569421b920d99c5b20cdafcdcf43a9 (patch) | |
tree | 9f3c640ded3f8f077de59a7b5b1a9b07b36d3c0b /src/plugins | |
parent | b6a3a938abd4a7fdb7ea96a38485b53f394fba17 (diff) | |
download | qtwayland-59a5fe99e1569421b920d99c5b20cdafcdcf43a9.tar.gz |
client: set_constraint_adjustment() for popups in xdg
See also https://cgit.freedesktop.org/wayland/wayland-protocols/tree/stable/xdg-shell/xdg-shell.xml#n234 .
Kudos to Greg V for his original patch in jira.
Fixes: QTBUG-87303
Pick-to: 5.15 6.2 6.3
Done-with: Greg V <greg@unrelenting.technology>
Change-Id: I57df9aedea7cc6f0b6fa142a6fc6c3bdc98324c8
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp index 55771ec6..aaeeb7c4 100644 --- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp +++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp @@ -435,6 +435,10 @@ void QWaylandXdgSurface::setPopup(QWaylandWindow *parent) positioner->set_anchor(QtWayland::xdg_positioner::anchor_top_left); positioner->set_gravity(QtWayland::xdg_positioner::gravity_bottom_right); positioner->set_size(m_window->geometry().width(), m_window->geometry().height()); + positioner->set_constraint_adjustment(QtWayland::xdg_positioner::constraint_adjustment_slide_x + | QtWayland::xdg_positioner::constraint_adjustment_slide_y + | QtWayland::xdg_positioner::constraint_adjustment_flip_x + | QtWayland::xdg_positioner::constraint_adjustment_flip_y); m_popup = new Popup(this, parentXdgSurface, positioner); positioner->destroy(); delete positioner; |