diff options
Diffstat (limited to 'src/plugins/platforms/wayland/qwaylanddisplay.cpp')
-rw-r--r-- | src/plugins/platforms/wayland/qwaylanddisplay.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/plugins/platforms/wayland/qwaylanddisplay.cpp b/src/plugins/platforms/wayland/qwaylanddisplay.cpp index 071ad78f91c..d853fc673e5 100644 --- a/src/plugins/platforms/wayland/qwaylanddisplay.cpp +++ b/src/plugins/platforms/wayland/qwaylanddisplay.cpp @@ -53,6 +53,7 @@ #include <QtWaylandClient/private/qwayland-fractional-scale-v1.h> #include <QtWaylandClient/private/qwayland-viewporter.h> #include <QtWaylandClient/private/qwayland-cursor-shape-v1.h> +#include <QtWaylandClient/private/qwayland-xx-session-management-v1.h> #include <QtWaylandClient/private/qwayland-xdg-system-bell-v1.h> #include <QtWaylandClient/private/qwayland-xdg-toplevel-drag-v1.h> #include <QtWaylandClient/private/qwayland-wlr-data-control-unstable-v1.h> @@ -803,6 +804,14 @@ void QWaylandDisplay::registry_global(uint32_t id, const QString &interface, uin mGlobals.pointerWarp.reset(new WithDestructor<QtWayland::wp_pointer_warp_v1, wp_pointer_warp_v1_destroy>( registry, id, 1)); } +#ifndef QT_NO_SESSIONMANAGER + else if (interface == QLatin1String(QtWayland::xx_session_manager_v1::interface()->name) + && qEnvironmentVariableIntValue("QT_WAYLAND_ENABLE_XX_SESSION_MANAGER") > 0) { + mGlobals.xxSessionManager.reset( + new WithDestructor<QtWayland::xx_session_manager_v1, xx_session_manager_v1_destroy>( + registry, id, 1)); + } +#endif mRegistryGlobals.append(RegistryGlobal(id, interface, version, registry)); |