From 8688dfcd7ce148a8e7fcd16521d458417eadcbf8 Mon Sep 17 00:00:00 2001 From: Paul Olav Tvete Date: Wed, 20 Aug 2014 12:21:30 +0200 Subject: Android: use correct size when leaving fullscreen On Android, fullscreen means enabling "immersive mode", which results in the screen available geometry changing. When restoring normal mode, oldAvailableGeometry == oldGeometry, which means that the fullscreen branch would be chosen even though the state is not fullscreen. By doing the maximized test first, we will default to non-fullscreen geometry for non-fullscreen windows. Task-number: QTBUG-39977 Change-Id: Ifc7e8b4de7e96d8c00603ce0cd136b95f58012bb Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/gui/kernel/qplatformscreen.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/gui/kernel/qplatformscreen.cpp') diff --git a/src/gui/kernel/qplatformscreen.cpp b/src/gui/kernel/qplatformscreen.cpp index 05d04ae4ee..6bf7915425 100644 --- a/src/gui/kernel/qplatformscreen.cpp +++ b/src/gui/kernel/qplatformscreen.cpp @@ -314,10 +314,10 @@ void QPlatformScreen::resizeMaximizedWindows() if (platformScreenForWindow(w) != this) continue; - if (w->windowState() & Qt::WindowFullScreen || w->geometry() == oldGeometry) - w->setGeometry(newGeometry); - else if (w->windowState() & Qt::WindowMaximized || w->geometry() == oldAvailableGeometry) + if (w->windowState() & Qt::WindowMaximized || w->geometry() == oldAvailableGeometry) w->setGeometry(newAvailableGeometry); + else if (w->windowState() & Qt::WindowFullScreen || w->geometry() == oldGeometry) + w->setGeometry(newGeometry); } } -- cgit v1.2.3