summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/ios/qiosapplicationdelegate.mm
diff options
context:
space:
mode:
authorLars Schmertmann <Lars.Schmertmann@governikus.de>2020-05-15 18:45:05 +0200
committerLars Schmertmann <Lars.Schmertmann@governikus.de>2020-05-19 06:37:03 +0200
commit1b7589a25c66d14ff6873710a3851038d627ef57 (patch)
tree0421b909991c340e6814766470c6a6b492aae10a /src/plugins/platforms/ios/qiosapplicationdelegate.mm
parent4683b0b57f0571e400ab0ed48530ad8c6171d9f6 (diff)
Enable Universal Links on iOS
Pick-to: 5.15 Change-Id: I05b5bede49f619576dd9ab37444f7cb5fe0f15f0 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/plugins/platforms/ios/qiosapplicationdelegate.mm')
-rw-r--r--src/plugins/platforms/ios/qiosapplicationdelegate.mm20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/plugins/platforms/ios/qiosapplicationdelegate.mm b/src/plugins/platforms/ios/qiosapplicationdelegate.mm
index a56c1e4568..c9fcfd23b6 100644
--- a/src/plugins/platforms/ios/qiosapplicationdelegate.mm
+++ b/src/plugins/platforms/ios/qiosapplicationdelegate.mm
@@ -50,6 +50,26 @@
@implementation QIOSApplicationDelegate
+- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> *restorableObjects))restorationHandler
+{
+ Q_UNUSED(application);
+ Q_UNUSED(restorationHandler);
+
+ if (!QGuiApplication::instance())
+ return NO;
+
+ if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]) {
+ QIOSIntegration *iosIntegration = QIOSIntegration::instance();
+ Q_ASSERT(iosIntegration);
+
+ QIOSServices *iosServices = static_cast<QIOSServices *>(iosIntegration->services());
+
+ return iosServices->handleUrl(QUrl::fromNSURL(userActivity.webpageURL));
+ }
+
+ return NO;
+}
+
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options
{
Q_UNUSED(application);