Skip to content

Commit 9a67b4f

Browse files
committed
Allow application to provide activity items
1 parent 08afe3b commit 9a67b4f

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

src/ios/SafariViewController.h

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,22 @@
11
#import <Cordova/CDVPlugin.h>
22
#import <SafariServices/SafariServices.h>
33

4+
@protocol ActivityItemProvider
5+
6+
- (NSArray<UIActivity *> *)safariViewController:(SFSafariViewController *)controller
7+
activityItemsForURL:(NSURL *)URL
8+
title:(nullable NSString *)title;
9+
10+
@end
11+
412
@interface SafariViewController : CDVPlugin <SFSafariViewControllerDelegate>
513

614
@property (nonatomic, copy) NSString* callbackId;
715
@property (nonatomic) bool animated;
16+
@property (nonatomic) id<ActivityItemProvider> activityItemProvider;
817

918
- (void) isAvailable:(CDVInvokedUrlCommand*)command;
1019
- (void) show:(CDVInvokedUrlCommand*)command;
1120
- (void) hide:(CDVInvokedUrlCommand*)command;
1221

13-
@end
22+
@end

src/ios/SafariViewController.m

100644100755
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,4 +143,14 @@ - (void)safariViewController:(SFSafariViewController *)controller didCompleteIni
143143
}
144144
}
145145

146+
- (NSArray<UIActivity *> *)safariViewController:(SFSafariViewController *)
147+
controller activityItemsForURL:(NSURL *)URL
148+
title:(nullable NSString *)title {
149+
150+
if(self.activityItemProvider)
151+
return [self.activityItemProvider safariViewController:controller activityItemsForURL:URL title:title];
152+
else
153+
return nil;
154+
}
155+
146156
@end

0 commit comments

Comments
 (0)