Repo created
This commit is contained in:
parent
4af19165ec
commit
68073add76
12458 changed files with 12350765 additions and 2 deletions
64
iphone/Maps/Classes/Share/MWMActivityViewController.mm
Normal file
64
iphone/Maps/Classes/Share/MWMActivityViewController.mm
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
#import "MWMActivityViewController.h"
|
||||
#import "MWMEditorViralActivityItem.h"
|
||||
#import "MWMShareActivityItem.h"
|
||||
|
||||
@interface MWMActivityViewController ()
|
||||
|
||||
@property(weak, nonatomic) UIViewController *ownerViewController;
|
||||
@property(weak, nonatomic) UIView *anchorView;
|
||||
|
||||
@end
|
||||
|
||||
@implementation MWMActivityViewController
|
||||
|
||||
- (instancetype)initWithActivityItem:(id<UIActivityItemSource>)activityItem {
|
||||
return [self initWithActivityItems:@[activityItem]];
|
||||
}
|
||||
|
||||
- (instancetype)initWithActivityItems:(NSArray *)activityItems {
|
||||
self = [super initWithActivityItems:activityItems applicationActivities:nil];
|
||||
if (self)
|
||||
self.excludedActivityTypes = @[
|
||||
UIActivityTypePrint, UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll,
|
||||
UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr, UIActivityTypePostToVimeo
|
||||
];
|
||||
return self;
|
||||
}
|
||||
|
||||
+ (instancetype)shareControllerForMyPosition:(CLLocationCoordinate2D)location {
|
||||
MWMShareActivityItem *item = [[MWMShareActivityItem alloc] initForMyPositionAtLocation:location];
|
||||
MWMActivityViewController *shareVC = [[self alloc] initWithActivityItem:item];
|
||||
shareVC.excludedActivityTypes = [shareVC.excludedActivityTypes arrayByAddingObject:UIActivityTypeAirDrop];
|
||||
return shareVC;
|
||||
}
|
||||
|
||||
+ (instancetype)shareControllerForPlacePage:(PlacePageData *)data {
|
||||
MWMShareActivityItem *item = [[MWMShareActivityItem alloc] initForPlacePage:data];
|
||||
MWMActivityViewController *shareVC = [[self alloc] initWithActivityItem:item];
|
||||
shareVC.excludedActivityTypes = [shareVC.excludedActivityTypes arrayByAddingObject:UIActivityTypeAirDrop];
|
||||
return shareVC;
|
||||
}
|
||||
|
||||
+ (instancetype)shareControllerForURL:(NSURL *)url
|
||||
message:(NSString *)message
|
||||
completionHandler:(UIActivityViewControllerCompletionWithItemsHandler)completionHandler {
|
||||
NSMutableArray *items = [NSMutableArray arrayWithObject:message];
|
||||
if (url) {
|
||||
[items addObject:url];
|
||||
}
|
||||
|
||||
MWMActivityViewController *shareVC = [[self alloc] initWithActivityItems:items.copy];
|
||||
shareVC.excludedActivityTypes = [shareVC.excludedActivityTypes arrayByAddingObject:UIActivityTypePostToFacebook];
|
||||
shareVC.completionWithItemsHandler = completionHandler;
|
||||
return shareVC;
|
||||
}
|
||||
|
||||
- (void)presentInParentViewController:(UIViewController *)parentVC anchorView:(UIView *)anchorView {
|
||||
self.ownerViewController = parentVC;
|
||||
self.anchorView = anchorView;
|
||||
self.popoverPresentationController.sourceView = anchorView;
|
||||
self.popoverPresentationController.sourceRect = anchorView.bounds;
|
||||
[parentVC presentViewController:self animated:YES completion:nil];
|
||||
}
|
||||
|
||||
@end
|
||||
Loading…
Add table
Add a link
Reference in a new issue