diff options
author | Matt Hoosier <matt.hoosier@garmin.com> | 2018-06-13 10:29:10 -0500 |
---|---|---|
committer | Matt Hoosier <matt.hoosier@garmin.com> | 2018-06-20 13:13:06 +0000 |
commit | 1eaac3fbcd4cdd7aba3a611d1e94436fe2666b82 (patch) | |
tree | b8415fefa6795b6738423f72753c40eae8521a86 /src/compositor/extensions/qwaylandxdgshellv6integration_p.h | |
parent | 5a4769b0757867bbadf3d50e8a5a3b2e061be94b (diff) |
Compositor: make XdgShellV6 reconfigure clients on mode-change
[ChangeLog][Compositor] Made the zxdg_shell_v6 compositor protocol
implementation re-issue configure requests with updated sizes when
the size or available geometry changes on an output used by a
maximized or fullscreen surface.
Change-Id: Ia446511f123e831b2d0a35ba202a6d092a841569
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Diffstat (limited to 'src/compositor/extensions/qwaylandxdgshellv6integration_p.h')
-rw-r--r-- | src/compositor/extensions/qwaylandxdgshellv6integration_p.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/compositor/extensions/qwaylandxdgshellv6integration_p.h b/src/compositor/extensions/qwaylandxdgshellv6integration_p.h index afb4964b9..5b56af89b 100644 --- a/src/compositor/extensions/qwaylandxdgshellv6integration_p.h +++ b/src/compositor/extensions/qwaylandxdgshellv6integration_p.h @@ -77,6 +77,9 @@ private Q_SLOTS: void handleFullscreenChanged(); void handleActivatedChanged(); void handleSurfaceSizeChanged(); + void handleToplevelDestroyed(); + void handleMaximizedSizeChanged(); + void handleFullscreenSizeChanged(); private: QWaylandQuickShellSurfaceItem *m_item = nullptr; @@ -110,6 +113,13 @@ private: QSize initialWindowSize; QPointF initialPosition; } windowedGeometry; + + struct { + QWaylandOutput *output = nullptr; + QMetaObject::Connection sizeChangedConnection; // Depending on whether maximized or fullscreen, + // will be hooked to geometry-changed or available- + // geometry-changed. + } nonwindowedState; }; class XdgPopupV6Integration : public QWaylandQuickShellIntegration |