diff options
author | Johan Klokkhammer Helsing <johan.helsing@qt.io> | 2018-10-24 09:25:42 +0200 |
---|---|---|
committer | Johan Helsing <johan.helsing@qt.io> | 2018-10-28 09:15:07 +0000 |
commit | 9ebe63181ba3504569c75b25862172353b6cfaa8 (patch) | |
tree | 0fb257a0489def5d2b3c63809f372048aca60f12 /src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp | |
parent | ba53384387dcfd2606a513b114eff488d3fdb940 (diff) | |
download | qtwayland-9ebe63181ba3504569c75b25862172353b6cfaa8.tar.gz |
Client: Fix fullscreen regression on wl-shell
The code for isNormal was wrong, so set_toplevel (which clears fullscreen
state) would be sent unless the window was both maximized and fullscreen. Fixed
it and made it a little bit more readable.
Change-Id: Icaa52d3a058df064a0bd1164119af3f511cb4220
Fixes: QTBUG-71350
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Diffstat (limited to 'src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp')
-rw-r--r-- | src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp b/src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp index d9bc8305..88a63655 100644 --- a/src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp +++ b/src/plugins/shellintegration/wl-shell/qwaylandwlshellsurface.cpp @@ -180,7 +180,7 @@ void QWaylandWlShellSurface::requestWindowStates(Qt::WindowStates states) m_window->applyConfigureWhenPossible(); } - bool isNormal = ~states & (Qt::WindowMaximized | Qt::WindowFullScreen); + bool isNormal = !(states & Qt::WindowMaximized) && !(states & Qt::WindowFullScreen); if (isNormal && (changedStates & (Qt::WindowMaximized | Qt::WindowFullScreen))) { setTopLevel(); // set normal window // There's usually no configure event after this, so just clear the rest of the pending |