summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/ios/qioswindow.mm
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2013-12-05 18:52:38 +0100
committerFrederik Gladhorn <frederik.gladhorn@digia.com>2013-12-05 18:52:38 +0100
commitf6dbdd9c16166f345fd5743886229192c97c2c4f (patch)
tree05e5e7b806dd627be4e3ba6fc9a32f115847acb0 /src/plugins/platforms/ios/qioswindow.mm
parentb8084618545570a8832d344a2e9586e1226cc697 (diff)
parent47efa9213d92a4366e03bd6d056837cd5bbadb1e (diff)
Merge remote-tracking branch 'origin/stable' into dev
Conflicts: src/sql/drivers/sqlite/qsql_sqlite.cpp Change-Id: Ia7cffd2c99ae3d5eea6b5740683c06e921336dcd
Diffstat (limited to 'src/plugins/platforms/ios/qioswindow.mm')
-rw-r--r--src/plugins/platforms/ios/qioswindow.mm15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/plugins/platforms/ios/qioswindow.mm b/src/plugins/platforms/ios/qioswindow.mm
index 0dd810bdf6..7ab136e8b9 100644
--- a/src/plugins/platforms/ios/qioswindow.mm
+++ b/src/plugins/platforms/ios/qioswindow.mm
@@ -449,10 +449,18 @@ QT_BEGIN_NAMESPACE
QIOSWindow::QIOSWindow(QWindow *window)
: QPlatformWindow(window)
, m_view([[QUIView alloc] initWithQIOSWindow:this])
- , m_normalGeometry(QPlatformWindow::geometry())
, m_windowLevel(0)
{
setParent(QPlatformWindow::parent());
+
+ // Resolve default window geometry in case it was not set before creating the
+ // platform window. This picks up eg. minimum-size if set, and defaults to
+ // the "maxmized" geometry (even though we're not in that window state).
+ // FIXME: Detect if we apply a maximized geometry and send a window state
+ // change event in that case.
+ m_normalGeometry = initialGeometry(window, QPlatformWindow::geometry(),
+ screen()->availableGeometry().width(), screen()->availableGeometry().height());
+
setWindowState(window->windowState());
}
@@ -579,6 +587,11 @@ void QIOSWindow::applyGeometry(const QRect &rect)
[m_view layoutIfNeeded];
}
+bool QIOSWindow::isExposed() const
+{
+ return window()->isVisible() && !window()->geometry().isEmpty();
+}
+
void QIOSWindow::setWindowState(Qt::WindowState state)
{
// Update the QWindow representation straight away, so that