summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms')
-rw-r--r--src/plugins/platforms/ios/qioswindow.h1
-rw-r--r--src/plugins/platforms/ios/qioswindow.mm9
2 files changed, 10 insertions, 0 deletions
diff --git a/src/plugins/platforms/ios/qioswindow.h b/src/plugins/platforms/ios/qioswindow.h
index 4e1970d4d4..b20c1c4fc5 100644
--- a/src/plugins/platforms/ios/qioswindow.h
+++ b/src/plugins/platforms/ios/qioswindow.h
@@ -86,6 +86,7 @@ public:
void updateGeometry(const QRect &rect);
void setWindowState(Qt::WindowState state);
+ void handleContentOrientationChange(Qt::ScreenOrientation orientation);
GLuint framebufferObject(const QIOSContext &context) const;
diff --git a/src/plugins/platforms/ios/qioswindow.mm b/src/plugins/platforms/ios/qioswindow.mm
index 5701ac8aa2..e220312d15 100644
--- a/src/plugins/platforms/ios/qioswindow.mm
+++ b/src/plugins/platforms/ios/qioswindow.mm
@@ -43,6 +43,7 @@
#include "qioscontext.h"
#include "qiosscreen.h"
#include "qiosapplicationdelegate.h"
+#include "qiosorientationlistener.h"
#import <QuartzCore/CAEAGLLayer.h>
@@ -248,6 +249,14 @@ void QIOSWindow::setWindowState(Qt::WindowState state)
}
}
+void QIOSWindow::handleContentOrientationChange(Qt::ScreenOrientation orientation)
+{
+ // Keep the status bar in sync with content orientation. This will ensure
+ // that the task bar (and associated gestures) are aligned correctly:
+ UIDeviceOrientation uiOrientation = convertToUIOrientation(orientation);
+ [[UIApplication sharedApplication] setStatusBarOrientation:uiOrientation animated:NO];
+}
+
GLuint QIOSWindow::framebufferObject(const QIOSContext &context) const
{
static GLuint framebuffer = 0;