summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/ios/qiosscreen.mm
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@digia.com>2013-11-25 15:07:21 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-11-25 23:56:37 +0100
commit6820ac594af949527d17d0b32205377fc767f527 (patch)
treec20dca2a54386f84aba843c01f6f40ae37d5db0c /src/plugins/platforms/ios/qiosscreen.mm
parent8f324765425fdc4d2ecd9c82ec505d22f057358f (diff)
iOS: Prefer window states over geometry-heuristics when laying out windows
A window that was resized to the full screen size of the screen would otherwise always stay in full screen, even if the window state was maximized. Change-Id: I4720f7b6ad1d85658ea96c6da0515693e8c827f3 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Diffstat (limited to 'src/plugins/platforms/ios/qiosscreen.mm')
-rw-r--r--src/plugins/platforms/ios/qiosscreen.mm8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/plugins/platforms/ios/qiosscreen.mm b/src/plugins/platforms/ios/qiosscreen.mm
index b8f4e387ed..7746163357 100644
--- a/src/plugins/platforms/ios/qiosscreen.mm
+++ b/src/plugins/platforms/ios/qiosscreen.mm
@@ -231,9 +231,13 @@ void QIOSScreen::layoutWindows()
if (!platformWindow)
continue;
- if (window->windowState() & Qt::WindowFullScreen || window->geometry() == oldGeometry)
+ // FIXME: Handle more complex cases of no-state and/or child windows when rotating
+
+ if (window->windowState() & Qt::WindowFullScreen
+ || (window->windowState() & Qt::WindowNoState && window->geometry() == oldGeometry))
platformWindow->applyGeometry(newGeometry);
- else if (window->windowState() & Qt::WindowMaximized || window->geometry() == oldAvailableGeometry)
+ else if (window->windowState() & Qt::WindowMaximized
+ || (window->windowState() & Qt::WindowNoState && window->geometry() == oldAvailableGeometry))
platformWindow->applyGeometry(newAvailableGeometry);
}
}