summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/ios/qiosinputcontext.mm
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/ios/qiosinputcontext.mm')
-rw-r--r--src/plugins/platforms/ios/qiosinputcontext.mm9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/plugins/platforms/ios/qiosinputcontext.mm b/src/plugins/platforms/ios/qiosinputcontext.mm
index 050c592aca..493c283ec1 100644
--- a/src/plugins/platforms/ios/qiosinputcontext.mm
+++ b/src/plugins/platforms/ios/qiosinputcontext.mm
@@ -49,6 +49,8 @@
#include "qioswindow.h"
#include "quiview.h"
+#include <QtCore/private/qcore_mac_p.h>
+
#include <QGuiApplication>
#include <QtGui/private/qwindow_p.h>
@@ -536,6 +538,11 @@ void QIOSInputContext::scroll(int y)
if (!rootView)
return;
+ if (qt_apple_isApplicationExtension()) {
+ qWarning() << "can't scroll root view in application extension";
+ return;
+ }
+
CATransform3D translationTransform = CATransform3DMakeTranslation(0.0, -y, 0.0);
if (CATransform3DEqualToTransform(translationTransform, rootView.layer.sublayerTransform))
return;
@@ -574,7 +581,7 @@ void QIOSInputContext::scroll(int y)
// Raise all known windows to above the status-bar if we're scrolling the screen,
// while keeping the relative window level between the windows the same.
- NSArray *applicationWindows = [[UIApplication sharedApplication] windows];
+ NSArray *applicationWindows = [qt_apple_sharedApplication() windows];
static QHash<UIWindow *, UIWindowLevel> originalWindowLevels;
for (UIWindow *window in applicationWindows) {
if (keyboardScrollIsActive && !originalWindowLevels.contains(window))