diff --git a/iphone/Maps/Classes/CustomAlert/AlertController/MWMAlertViewController.h b/iphone/Maps/Classes/CustomAlert/AlertController/MWMAlertViewController.h index 3f5a9b9fd0..414aa2b65c 100644 --- a/iphone/Maps/Classes/CustomAlert/AlertController/MWMAlertViewController.h +++ b/iphone/Maps/Classes/CustomAlert/AlertController/MWMAlertViewController.h @@ -5,7 +5,7 @@ @interface MWMAlertViewController : UIViewController -+ (MWMAlertViewController *)activeAlertController; ++ (nonnull MWMAlertViewController *)activeAlertController; @property (weak, nonatomic, readonly) UIViewController * _Null_unspecified ownerViewController; @@ -31,7 +31,6 @@ - (void)presentDeleteMapProhibitedAlert; - (void)presentUnsavedEditsAlertWithOkBlock:(nonnull TMWMVoidBlock)okBlock; - (void)presentNoWiFiAlertWithOkBlock:(nullable TMWMVoidBlock)okBlock; -- (void)presentPedestrianToastAlert:(BOOL)isFirstLaunch; - (void)presentIncorrectFeauturePositionAlert; - (void)presentInternalErrorAlert; - (void)presentNotEnoughSpaceAlert; diff --git a/iphone/Maps/Classes/CustomAlert/AlertController/MWMAlertViewController.mm b/iphone/Maps/Classes/CustomAlert/AlertController/MWMAlertViewController.mm index ebef978dc0..dcc8ed1716 100644 --- a/iphone/Maps/Classes/CustomAlert/AlertController/MWMAlertViewController.mm +++ b/iphone/Maps/Classes/CustomAlert/AlertController/MWMAlertViewController.mm @@ -15,7 +15,7 @@ static NSString * const kAlertControllerNibIdentifier = @"MWMAlertViewController @implementation MWMAlertViewController -+ (MWMAlertViewController *)activeAlertController ++ (nonnull MWMAlertViewController *)activeAlertController { UIWindow * window = UIApplication.sharedApplication.delegate.window; UIViewController * rootViewController = window.rootViewController; @@ -78,11 +78,6 @@ static NSString * const kAlertControllerNibIdentifier = @"MWMAlertViewController [self displayAlert:[MWMAlert noWiFiAlertWithOkBlock:okBlock]]; } -- (void)presentPedestrianToastAlert:(BOOL)isFirstLaunch -{ - [self displayAlert:[MWMAlert pedestrianToastShareAlert:isFirstLaunch]]; -} - - (void)presentIncorrectFeauturePositionAlert { [self displayAlert:[MWMAlert incorrectFeauturePositionAlert]]; diff --git a/iphone/Maps/Classes/CustomAlert/BaseAlert/MWMAlert.h b/iphone/Maps/Classes/CustomAlert/BaseAlert/MWMAlert.h index 98fc74c072..b9183a579a 100644 --- a/iphone/Maps/Classes/CustomAlert/BaseAlert/MWMAlert.h +++ b/iphone/Maps/Classes/CustomAlert/BaseAlert/MWMAlert.h @@ -28,7 +28,6 @@ using TMWMDownloadBlock = void (^)(storage::TCountriesVec const &, TMWMVoidBlock + (MWMAlert *)unsavedEditsAlertWithOkBlock:(TMWMVoidBlock)okBlock; + (MWMAlert *)locationServiceNotSupportedAlert; + (MWMAlert *)locationNotFoundAlertWithOkBlock:(TMWMVoidBlock)okBlock; -+ (MWMAlert *)pedestrianToastShareAlert:(BOOL)isFirstLaunch; + (MWMAlert *)incorrectFeauturePositionAlert; + (MWMAlert *)internalErrorAlert; + (MWMAlert *)notEnoughSpaceAlert; diff --git a/iphone/Maps/Classes/CustomAlert/BaseAlert/MWMAlert.mm b/iphone/Maps/Classes/CustomAlert/BaseAlert/MWMAlert.mm index b2ebba059a..71692aa4e3 100644 --- a/iphone/Maps/Classes/CustomAlert/BaseAlert/MWMAlert.mm +++ b/iphone/Maps/Classes/CustomAlert/BaseAlert/MWMAlert.mm @@ -7,7 +7,6 @@ #import "MWMFacebookAlert.h" #import "MWMLocationAlert.h" #import "MWMOsmAuthAlert.h" -#import "MWMPedestrianShareAlert.h" #import "MWMPlaceDoesntExistAlert.h" #import "MWMRateAlert.h" #import "MWMRoutingDisclaimerAlert.h" @@ -129,11 +128,6 @@ } } -+ (MWMAlert *)pedestrianToastShareAlert:(BOOL)isFirstLaunch -{ - return [MWMPedestrianShareAlert alert:isFirstLaunch]; -} - + (MWMAlert *)incorrectFeauturePositionAlert { return [MWMDefaultAlert incorrectFeauturePositionAlert]; diff --git a/iphone/Maps/Classes/CustomAlert/PedestrianShareAlert/MWMPedestrianShareAlert.h b/iphone/Maps/Classes/CustomAlert/PedestrianShareAlert/MWMPedestrianShareAlert.h deleted file mode 100644 index 596a204506..0000000000 --- a/iphone/Maps/Classes/CustomAlert/PedestrianShareAlert/MWMPedestrianShareAlert.h +++ /dev/null @@ -1,7 +0,0 @@ -#import "MWMAlert.h" - -@interface MWMPedestrianShareAlert : MWMAlert - -+ (MWMPedestrianShareAlert *)alert:(BOOL)isFirstLaunch; - -@end diff --git a/iphone/Maps/Classes/CustomAlert/PedestrianShareAlert/MWMPedestrianShareAlert.mm b/iphone/Maps/Classes/CustomAlert/PedestrianShareAlert/MWMPedestrianShareAlert.mm deleted file mode 100644 index a89c2d261b..0000000000 --- a/iphone/Maps/Classes/CustomAlert/PedestrianShareAlert/MWMPedestrianShareAlert.mm +++ /dev/null @@ -1,88 +0,0 @@ -#import "Common.h" -#import "Macros.h" -#import "MWMActivityViewController.h" -#import "MWMAlertViewController.h" -#import "MWMPedestrianShareAlert.h" -#import "Statistics.h" -#import "UIButton+RuntimeAttributes.h" -#import "UIColor+MapsMeColor.h" - -#import "3party/Alohalytics/src/alohalytics_objc.h" - -static NSString * const kStatisticsEvent = @"Pedestrian Share Alert"; - -@interface MWMPedestrianShareAlert () - -@property (weak, nonatomic) IBOutlet UILabel * title; -@property (weak, nonatomic) IBOutlet UIView * videoView; -@property (weak, nonatomic) IBOutlet UIImageView * image; -@property (weak, nonatomic) IBOutlet UILabel * message; -@property (weak, nonatomic) IBOutlet UIButton * shareButton; - -@property (nonatomic) BOOL isFirstLaunch; - -@end - -@implementation MWMPedestrianShareAlert - -+ (MWMPedestrianShareAlert *)alert:(BOOL)isFirstLaunch -{ - [Statistics logEvent:kStatisticsEvent withParameters:@{kStatAction : kStatOpen}]; - MWMPedestrianShareAlert * view = [NSBundle.mainBundle loadNibNamed:NSStringFromClass(self.class) owner:self - options:nil].firstObject; - view.isFirstLaunch = isFirstLaunch; - if (isFirstLaunch) - { - view.title.text = L(@"title_walking_available"); - view.message.text = L(@"share_walking_routes_first_launch"); - view.image.image = [UIImage imageNamed:@"img_pedestrian"]; - } - else - { - view.title.text = L(@"share_walking_routes_congratulations"); - view.message.text = L(@"share_walking_routes_mastering"); - view.image.image = [UIImage imageNamed:@"img_achive_pedestrian"]; - } - return view; -} - -#pragma mark - Actions - -- (IBAction)shareButtonTap -{ - [Statistics logEvent:kStatisticsEvent withParameters:@{kStatAction : kStatApply}]; - [Alohalytics logEvent:kStatisticsEvent withValue:@"shareTap"]; - MWMActivityViewController * shareVC = [MWMActivityViewController shareControllerForPedestrianRoutesToast]; - if (IPAD && !isIOS7) - { - shareVC.completionWithItemsHandler = ^(NSString * activityType, BOOL completed, NSArray * returnedItems, - NSError * activityError) - { - [self close]; - }; - } - else - { - [self close]; - } - [shareVC presentInParentViewController:self.alertController anchorView:self.shareButton]; -} - -- (IBAction)doneButtonTap -{ - [Statistics logEvent:kStatisticsEvent withParameters:@{kStatAction : kStatClose}]; - [Alohalytics logEvent:kStatisticsEvent withValue:@"doneTap"]; - [self close]; -} - -- (void)rotate:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration -{ - // Overridden implemantation left empty since this view is added to the view controller handling device rotation -} - -- (void)addControllerViewToWindow -{ - // Overridden implemantation left empty to let sharing view appear above -} - -@end diff --git a/iphone/Maps/Classes/CustomAlert/PedestrianShareAlert/MWMPedestrianShareAlert.xib b/iphone/Maps/Classes/CustomAlert/PedestrianShareAlert/MWMPedestrianShareAlert.xib deleted file mode 100644 index 8d5551cb5d..0000000000 --- a/iphone/Maps/Classes/CustomAlert/PedestrianShareAlert/MWMPedestrianShareAlert.xib +++ /dev/null @@ -1,203 +0,0 @@ - - - - - - - - - HelveticaNeue-Medium - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/iphone/Maps/Classes/CustomViews/MapViewControls/BottomMenu/MWMBottomMenuViewController.mm b/iphone/Maps/Classes/CustomViews/MapViewControls/BottomMenu/MWMBottomMenuViewController.mm index 3acab08869..cf9d4e74d2 100644 --- a/iphone/Maps/Classes/CustomViews/MapViewControls/BottomMenu/MWMBottomMenuViewController.mm +++ b/iphone/Maps/Classes/CustomViews/MapViewControls/BottomMenu/MWMBottomMenuViewController.mm @@ -400,7 +400,7 @@ typedef NS_ENUM(NSUInteger, MWMBottomMenuViewCell) { MWMBottomMenuCollectionViewCell * cell = (MWMBottomMenuCollectionViewCell *)[self.additionalButtons cellForItemAtIndexPath:cellIndex]; MWMActivityViewController * shareVC = - [MWMActivityViewController shareControllerForLocationTitle:nil location:coord myPosition:YES]; + [MWMActivityViewController shareControllerForMyPosition:coord]; [shareVC presentInParentViewController:self.controller anchorView:cell.icon]; } diff --git a/iphone/Maps/Classes/MWMPlacePageEntity.h b/iphone/Maps/Classes/MWMPlacePageEntity.h index 78fab42378..9effcba53a 100644 --- a/iphone/Maps/Classes/MWMPlacePageEntity.h +++ b/iphone/Maps/Classes/MWMPlacePageEntity.h @@ -65,6 +65,7 @@ using MWMPlacePageCellTypeValueMap = map; - (m2::PointD const &)mercator; - (NSString *)apiURL; - (NSURL *)bookingUrl; +- (NSURL *)bookingDescriptionUrl; - (NSString * )hotelId; - (string)titleForNewBookmark; diff --git a/iphone/Maps/Classes/MWMPlacePageEntity.mm b/iphone/Maps/Classes/MWMPlacePageEntity.mm index aa61731448..47f95083f9 100644 --- a/iphone/Maps/Classes/MWMPlacePageEntity.mm +++ b/iphone/Maps/Classes/MWMPlacePageEntity.mm @@ -216,7 +216,13 @@ void initFieldsMap() - (NSURL *)bookingUrl { - auto const & url = m_info.GetSponsoredBookingUrl(); + return [self sponsoredUrl:NO]; +} +- (NSURL *)bookingDescriptionUrl { return [self sponsoredUrl:YES]; } +- (NSURL *)sponsoredUrl:(BOOL)isDescription +{ + auto const & url = + isDescription ? m_info.GetSponsoredDescriptionUrl() : m_info.GetSponsoredBookingUrl(); return url.empty() ? nil : [NSURL URLWithString:@(url.c_str())]; } diff --git a/iphone/Maps/Classes/MWMPlacePageViewManager.mm b/iphone/Maps/Classes/MWMPlacePageViewManager.mm index d067287ee3..288f410ca8 100644 --- a/iphone/Maps/Classes/MWMPlacePageViewManager.mm +++ b/iphone/Maps/Classes/MWMPlacePageViewManager.mm @@ -208,13 +208,8 @@ extern NSString * const kBookmarksChangedNotification; [Statistics logEvent:kStatEventName(kStatPlacePage, kStatShare)]; [Alohalytics logEvent:kAlohalyticsTapEventKey withValue:@"ppShare"]; MWMPlacePageEntity * entity = self.entity; - NSString * title = entity.bookmarkTitle ? entity.bookmarkTitle : entity.title; - CLLocationCoordinate2D const coord = - CLLocationCoordinate2DMake(entity.latlon.lat, entity.latlon.lon); MWMActivityViewController * shareVC = - [MWMActivityViewController shareControllerForLocationTitle:title - location:coord - myPosition:NO]; + [MWMActivityViewController shareControllerForPlacePageObject:entity]; [shareVC presentInParentViewController:self.ownerViewController anchorView:self.placePage.actionBar.shareAnchor]; } @@ -232,10 +227,7 @@ extern NSString * const kBookmarksChangedNotification; atLocation:[MWMLocationManager lastLocation]]; UIViewController * vc = static_cast([MapViewController controller]); - NSURL * url = - isDescription - ? [NSURL URLWithString:[self.entity getCellValue:MWMPlacePageCellTypeBookingMore]] - : self.entity.bookingUrl; + NSURL * url = isDescription ? self.entity.bookingDescriptionUrl : self.entity.bookingUrl; NSAssert(url, @"Booking url can't be nil!"); [vc openUrl:url]; } diff --git a/iphone/Maps/Classes/Share/MWMActivityViewController.h b/iphone/Maps/Classes/Share/MWMActivityViewController.h index 65ed2c4f70..14b2d9f266 100644 --- a/iphone/Maps/Classes/Share/MWMActivityViewController.h +++ b/iphone/Maps/Classes/Share/MWMActivityViewController.h @@ -1,11 +1,13 @@ +@class MWMPlacePageEntity; + @interface MWMActivityViewController : UIActivityViewController -+ (instancetype)shareControllerForLocationTitle:(NSString *)title location:(CLLocationCoordinate2D)location - myPosition:(BOOL)myPosition; -+ (instancetype)shareControllerForPedestrianRoutesToast; - + (instancetype)shareControllerForEditorViral; ++ (instancetype)shareControllerForMyPosition:(CLLocationCoordinate2D const &)location; + ++ (instancetype)shareControllerForPlacePageObject:(MWMPlacePageEntity *)entity; + - (void)presentInParentViewController:(UIViewController *)parentVC anchorView:(UIView *)anchorView; @end diff --git a/iphone/Maps/Classes/Share/MWMActivityViewController.mm b/iphone/Maps/Classes/Share/MWMActivityViewController.mm index c342eec959..a9e9237019 100644 --- a/iphone/Maps/Classes/Share/MWMActivityViewController.mm +++ b/iphone/Maps/Classes/Share/MWMActivityViewController.mm @@ -1,7 +1,6 @@ #import "MWMActivityViewController.h" #import "MWMEditorViralActivityItem.h" -#import "MWMShareLocationActivityItem.h" -#import "MWMSharePedestrianRoutesToastActivityItem.h" +#import "MWMShareActivityItem.h" @interface MWMActivityViewController () @@ -27,21 +26,17 @@ return self; } -+ (instancetype)shareControllerForLocationTitle:(NSString *)title location:(CLLocationCoordinate2D)location - myPosition:(BOOL)myPosition ++ (instancetype)shareControllerForMyPosition:(CLLocationCoordinate2D const &)location { - MWMShareLocationActivityItem * item = [[MWMShareLocationActivityItem alloc] initWithTitle:title location:location - myPosition:myPosition]; + MWMShareActivityItem * item = [[MWMShareActivityItem alloc] initForMyPositionAtLocation:location]; return [[self alloc] initWithActivityItem:item]; } -+ (instancetype)shareControllerForPedestrianRoutesToast ++ (instancetype)shareControllerForPlacePageObject:(MWMPlacePageEntity *)entity { - MWMSharePedestrianRoutesToastActivityItem * item = [[MWMSharePedestrianRoutesToastActivityItem alloc] init]; - MWMActivityViewController * vc = [[self alloc] initWithActivityItem:item]; - if ([vc respondsToSelector:@selector(popoverPresentationController)]) - vc.popoverPresentationController.permittedArrowDirections = UIPopoverArrowDirectionDown; - return vc; + MWMShareActivityItem * item = + [[MWMShareActivityItem alloc] initForPlacePageObjectWithEntity:entity]; + return [[self alloc] initWithActivityItem:item]; } + (instancetype)shareControllerForEditorViral @@ -66,14 +61,4 @@ [parentVC presentViewController:self animated:YES completion:nil]; } -- (BOOL)shouldAutorotate -{ - return YES; -} - -- (UIInterfaceOrientationMask)supportedInterfaceOrientations -{ - return UIInterfaceOrientationMaskAll; -} - @end diff --git a/iphone/Maps/Classes/Share/MWMShareActivityItem.h b/iphone/Maps/Classes/Share/MWMShareActivityItem.h new file mode 100644 index 0000000000..22be5da8eb --- /dev/null +++ b/iphone/Maps/Classes/Share/MWMShareActivityItem.h @@ -0,0 +1,8 @@ +@class MWMPlacePageEntity; + +@interface MWMShareActivityItem : NSObject + +- (instancetype)initForMyPositionAtLocation:(CLLocationCoordinate2D const &)location; +- (instancetype)initForPlacePageObjectWithEntity:(MWMPlacePageEntity *)entity; + +@end diff --git a/iphone/Maps/Classes/Share/MWMShareActivityItem.mm b/iphone/Maps/Classes/Share/MWMShareActivityItem.mm new file mode 100644 index 0000000000..394e7dabc3 --- /dev/null +++ b/iphone/Maps/Classes/Share/MWMShareActivityItem.mm @@ -0,0 +1,151 @@ +#import "MWMShareActivityItem.h" +#import "MWMPlacePageEntity.h" +#import "Macros.h" +#import "Statistics.h" + +#import "3party/Alohalytics/src/alohalytics_objc.h" + +#include "Framework.h" + +NSString * httpGe0Url(NSString * shortUrl) +{ + return + [shortUrl stringByReplacingCharactersInRange:NSMakeRange(0, 6) withString:@"http://ge0.me/"]; +} + +@interface MWMShareActivityItem () + +@property(nonatomic) MWMPlacePageEntity * entity; +@property(nonatomic) CLLocationCoordinate2D location; +@property(nonatomic) BOOL isMyPosition; + +@end + +@implementation MWMShareActivityItem + +- (instancetype)initForMyPositionAtLocation:(CLLocationCoordinate2D const &)location +{ + self = [super init]; + if (self) + { + _location = location; + _isMyPosition = YES; + } + return self; +} + +- (instancetype)initForPlacePageObjectWithEntity:(MWMPlacePageEntity *)entity +{ + self = [super init]; + if (self) + { + NSAssert(entity, @"Entity can't be nil!"); + BOOL const isMyPosition = entity.isMyPosition; + _isMyPosition = isMyPosition; + if (!isMyPosition) + _entity = entity; + } + return self; +} + +- (NSString *)url:(BOOL)isShort +{ + auto & f = GetFramework(); + + auto const title = ^NSString *(MWMPlacePageEntity * entity) + { + if (!entity || entity.isMyPosition) + return L(@"my_position"); + else if (entity.title.length) + return entity.title; + else if (entity.subtitle.length) + return entity.subtitle; + else if (entity.address.length) + return entity.address; + else + return @""; + }; + + string const s = f.CodeGe0url(self.location.latitude, self.location.longitude, f.GetDrawScale(), + title(self.entity).UTF8String); + NSString * url = @(s.c_str()); + if (!isShort) + return url; + NSUInteger const kGe0UrlLength = 16; + return [url substringWithRange:NSMakeRange(0, kGe0UrlLength)]; +} + +#pragma mark - UIActivityItemSource + +- (id)activityViewControllerPlaceholderItem:(UIActivityViewController *)activityViewController +{ + return [self url:YES]; +} + +- (id)activityViewController:(UIActivityViewController *)activityViewController + itemForActivityType:(NSString *)activityType +{ + NSString * event = @"MWMShareLocationActivityItem:activityViewController:itemForActivityType:"; + [Statistics logEvent:kStatEventName(kStatShare, kStatLocation) + withParameters:@{kStatAction : activityType}]; + [Alohalytics logEvent:event withValue:activityType]; + if ([UIActivityTypePostToTwitter isEqualToString:activityType]) + return self.itemForTwitter; + return [self itemDefaultWithActivityType:activityType]; +} + +- (NSString *)activityViewController:(UIActivityViewController *)activityViewController + subjectForActivityType:(NSString *)activityType +{ + return [self subjectDefault]; +} + +#pragma mark - Message + +- (NSString *)itemForTwitter +{ + NSString * shortUrl = [self url:YES]; + return [NSString stringWithFormat:@"%@\n%@", httpGe0Url(shortUrl), + self.isMyPosition ? L(@"my_position_share_email_subject") + : self.entity.title]; +} + +- (NSString *)itemDefaultWithActivityType:(NSString *)activityType +{ + NSString * url = httpGe0Url([self url:NO]); + if (self.isMyPosition) + { + BOOL const hasSubject = [activityType isEqualToString:UIActivityTypeMail]; + if (hasSubject) + return url; + return [NSString stringWithFormat:@"%@ %@", L(@"my_position_share_email_subject"), url]; + } + + NSMutableString * result = [L(@"sharing_call_action_look") mutableCopy]; + vector strings{self.entity.title, self.entity.subtitle, self.entity.address, + [self.entity getCellValue:MWMPlacePageCellTypePhoneNumber], url}; + + if (self.entity.isBooking) + { + strings.push_back(L(@"sharing_booking")); + strings.push_back(self.entity.bookingDescriptionUrl.absoluteString); + } + + for (auto const str : strings) + { + if (str.length) + [result appendString:[NSString stringWithFormat:@"\n%@", str]]; + } + + return result; +} + +#pragma mark - Subject + +- (NSString *)subjectDefault +{ + return self.isMyPosition ? L(@"my_position_share_email_subject") + : L(@"bookmark_share_email_subject"); +} + +@end \ No newline at end of file diff --git a/iphone/Maps/Classes/Share/MWMShareLocationActivityItem.h b/iphone/Maps/Classes/Share/MWMShareLocationActivityItem.h deleted file mode 100644 index 38ed944dca..0000000000 --- a/iphone/Maps/Classes/Share/MWMShareLocationActivityItem.h +++ /dev/null @@ -1,5 +0,0 @@ -@interface MWMShareLocationActivityItem : NSObject - -- (instancetype)initWithTitle:(NSString *)title location:(CLLocationCoordinate2D)location myPosition:(BOOL)myPosition; - -@end diff --git a/iphone/Maps/Classes/Share/MWMShareLocationActivityItem.mm b/iphone/Maps/Classes/Share/MWMShareLocationActivityItem.mm deleted file mode 100644 index 5612ea75cf..0000000000 --- a/iphone/Maps/Classes/Share/MWMShareLocationActivityItem.mm +++ /dev/null @@ -1,108 +0,0 @@ -#import "Macros.h" -#import "MWMShareLocationActivityItem.h" -#import "Statistics.h" - -#import "3party/Alohalytics/src/alohalytics_objc.h" - -#include "Framework.h" - -NSString * httpGe0Url(NSString * shortUrl) -{ - return [shortUrl stringByReplacingCharactersInRange:NSMakeRange(0, 6) withString:@"http://ge0.me/"]; -} - -@interface MWMShareLocationActivityItem () - -@property (copy, nonatomic) NSString * title; -@property (nonatomic) CLLocationCoordinate2D location; -@property (nonatomic) BOOL myPosition; - -@end - -@implementation MWMShareLocationActivityItem - -- (instancetype)initWithTitle:(NSString *)title location:(CLLocationCoordinate2D)location myPosition:(BOOL)myPosition -{ - self = [super init]; - if (self) - { - self.title = title ? title : @""; - self.location = location; - self.myPosition = myPosition; - } - return self; -} - -- (NSString *)url:(BOOL)isShort -{ - auto & f = GetFramework(); - string const s = f.CodeGe0url(self.location.latitude, self.location.longitude, f.GetDrawScale(), - self.title.UTF8String); - NSString * url = @(s.c_str()); - if (!isShort) - return url; - NSUInteger const kGe0UrlLength = 16; - return [url substringWithRange:NSMakeRange(0, kGe0UrlLength)]; -} - -#pragma mark - UIActivityItemSource - -- (id)activityViewControllerPlaceholderItem:(UIActivityViewController *)activityViewController -{ - return [self url:YES]; -} - -- (id)activityViewController:(UIActivityViewController *)activityViewController - itemForActivityType:(NSString *)activityType -{ - NSString * event = @"MWMShareLocationActivityItem:activityViewController:itemForActivityType:"; - [Statistics logEvent:kStatEventName(kStatShare, kStatLocation) withParameters:@{kStatAction : activityType}]; - [Alohalytics logEvent:event withValue:activityType]; - if ([UIActivityTypeMessage isEqualToString:activityType]) - return [self itemForMessageApp]; - if ([UIActivityTypeMail isEqualToString:activityType]) - return [self itemForMailApp]; - return [self itemDefault]; -} - -- (NSString *)activityViewController:(UIActivityViewController *)activityViewController - subjectForActivityType:(NSString *)activityType -{ - return [self subjectDefault]; -} - -#pragma mark - Message - -- (NSString *)itemForMessageApp -{ - NSString * shortUrl = [self url:YES]; - return [NSString stringWithFormat:self.myPosition ? L(@"my_position_share_sms") : L(@"bookmark_share_sms"), - shortUrl, httpGe0Url(shortUrl)]; -} - -- (NSString *)itemForMailApp -{ - NSString * url = [self url:NO]; - if (!self.myPosition) - return [NSString stringWithFormat:L(@"bookmark_share_email"), self.title, url, httpGe0Url(url)]; - - search::AddressInfo const info = GetFramework().GetAddressInfoAtPoint( - MercatorBounds::FromLatLon(self.location.latitude, self.location.longitude)); - - NSString * nameAndAddress = @(info.FormatNameAndAddress().c_str()); - return [NSString stringWithFormat:L(@"my_position_share_email"), nameAndAddress, url, httpGe0Url(url)]; -} - -- (NSString *)itemDefault -{ - return httpGe0Url([self url:NO]); -} - -#pragma mark - Subject - -- (NSString *)subjectDefault -{ - return self.myPosition ? L(@"my_position_share_email_subject") : L(@"bookmark_share_email_subject"); -} - -@end \ No newline at end of file diff --git a/iphone/Maps/Classes/Share/MWMSharePedestrianRoutesToastActivityItem.h b/iphone/Maps/Classes/Share/MWMSharePedestrianRoutesToastActivityItem.h deleted file mode 100644 index 2450302430..0000000000 --- a/iphone/Maps/Classes/Share/MWMSharePedestrianRoutesToastActivityItem.h +++ /dev/null @@ -1,3 +0,0 @@ -@interface MWMSharePedestrianRoutesToastActivityItem : NSObject - -@end diff --git a/iphone/Maps/Classes/Share/MWMSharePedestrianRoutesToastActivityItem.mm b/iphone/Maps/Classes/Share/MWMSharePedestrianRoutesToastActivityItem.mm deleted file mode 100644 index f440abe7a2..0000000000 --- a/iphone/Maps/Classes/Share/MWMSharePedestrianRoutesToastActivityItem.mm +++ /dev/null @@ -1,45 +0,0 @@ -#import "Macros.h" -#import "MWMSharePedestrianRoutesToastActivityItem.h" -#import "Statistics.h" - -#import "3party/Alohalytics/src/alohalytics_objc.h" - -#include "platform/preferred_languages.hpp" - -@implementation MWMSharePedestrianRoutesToastActivityItem - -#pragma mark - UIActivityItemSource - -- (id)activityViewControllerPlaceholderItem:(UIActivityViewController *)activityViewController -{ - return NSString.string; -} - -- (id)activityViewController:(UIActivityViewController *)activityViewController - itemForActivityType:(NSString *)activityType -{ - NSString * event = @"MWMSharePedestrianRoutesToastActivityItem:activityViewController:itemForActivityType:"; - [Statistics logEvent:kStatEventName(kStatShare, kStatSocial) withParameters:@{kStatAction : activityType}]; - [Alohalytics logEvent:event withValue:activityType]; - if ([activityType isEqualToString:UIActivityTypePostToFacebook] || - [activityType isEqualToString:@"com.facebook.Facebook.ShareExtension"] || - [activityType.lowercaseString rangeOfString:@"facebook"].length) - { - NSString * url = [NSString stringWithFormat:@"http://maps.me/fb-pedestrian?lang=%@", - @(languages::GetCurrentNorm().c_str())]; - return [NSURL URLWithString:url]; - } - if ([UIActivityTypeMessage isEqualToString:activityType]) - return L(@"share_walking_routes_sms"); - if ([UIActivityTypeMail isEqualToString:activityType]) - return L(@"share_walking_routes_email_body"); - return L(@"share_walking_routes_messenger"); -} - -- (NSString *)activityViewController:(UIActivityViewController *)activityViewController - subjectForActivityType:(NSString *)activityType -{ - return L(@"share_walking_routes_email_subject"); -} - -@end diff --git a/iphone/Maps/Maps.xcodeproj/project.pbxproj b/iphone/Maps/Maps.xcodeproj/project.pbxproj index 56b98ef64d..cb73c896ee 100644 --- a/iphone/Maps/Maps.xcodeproj/project.pbxproj +++ b/iphone/Maps/Maps.xcodeproj/project.pbxproj @@ -33,7 +33,7 @@ 3406FA181C6E0D8F00E9FAD2 /* MWMMapDownloadDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3406FA171C6E0D8F00E9FAD2 /* MWMMapDownloadDialog.xib */; }; 3406FA191C6E0D8F00E9FAD2 /* MWMMapDownloadDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3406FA171C6E0D8F00E9FAD2 /* MWMMapDownloadDialog.xib */; }; 340837131B7243CE00B5C185 /* MWMActivityViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340837121B7243CE00B5C185 /* MWMActivityViewController.mm */; }; - 340837161B72451A00B5C185 /* MWMShareLocationActivityItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340837151B72451A00B5C185 /* MWMShareLocationActivityItem.mm */; }; + 340837161B72451A00B5C185 /* MWMShareActivityItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340837151B72451A00B5C185 /* MWMShareActivityItem.mm */; }; 340C20E31C3E565600111D22 /* MWMCuisineEditorViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340C20E21C3E565600111D22 /* MWMCuisineEditorViewController.mm */; }; 340C20E41C3E565600111D22 /* MWMCuisineEditorViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340C20E21C3E565600111D22 /* MWMCuisineEditorViewController.mm */; }; 340E10601B944DAB00D975D5 /* MWMSearchHistoryManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340E105F1B944DAB00D975D5 /* MWMSearchHistoryManager.mm */; }; @@ -132,8 +132,6 @@ 3476B8E01BFDD33A00874594 /* tts-how-to-set-up-voice-img in Resources */ = {isa = PBXBuildFile; fileRef = 3476B8DF1BFDD33A00874594 /* tts-how-to-set-up-voice-img */; }; 3476B8E11BFDD33A00874594 /* tts-how-to-set-up-voice-img in Resources */ = {isa = PBXBuildFile; fileRef = 3476B8DF1BFDD33A00874594 /* tts-how-to-set-up-voice-img */; }; 347A4C5E1C4E76C9006BA66E /* liboauthcpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 340DC82B1C4E72C700EAA2CC /* liboauthcpp.a */; }; - 347BAC691B733D540010FF78 /* MWMPedestrianShareAlert.xib in Resources */ = {isa = PBXBuildFile; fileRef = 347BAC681B733D540010FF78 /* MWMPedestrianShareAlert.xib */; }; - 347BAC6E1B736BA70010FF78 /* MWMSharePedestrianRoutesToastActivityItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = 347BAC6D1B736BA70010FF78 /* MWMSharePedestrianRoutesToastActivityItem.mm */; }; 347D7C691C2C0703006B2D0A /* UITextView+RuntimeAttributes.mm in Sources */ = {isa = PBXBuildFile; fileRef = 347D7C681C2C0703006B2D0A /* UITextView+RuntimeAttributes.mm */; }; 347D7C6A1C2C0703006B2D0A /* UITextView+RuntimeAttributes.mm in Sources */ = {isa = PBXBuildFile; fileRef = 347D7C681C2C0703006B2D0A /* UITextView+RuntimeAttributes.mm */; }; 347FD8671C60B2CE002FB65E /* MWMOpeningHoursAddClosedTableViewCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = 347FD84B1C60B2CE002FB65E /* MWMOpeningHoursAddClosedTableViewCell.mm */; }; @@ -220,7 +218,6 @@ 34ABA62C1C2D57D500FE1BEC /* MWMInputPasswordValidator.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34ABA62B1C2D57D500FE1BEC /* MWMInputPasswordValidator.mm */; }; 34ABA62D1C2D57D500FE1BEC /* MWMInputPasswordValidator.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34ABA62B1C2D57D500FE1BEC /* MWMInputPasswordValidator.mm */; }; 34ABA6301C2D58F300FE1BEC /* MWMInputEmailValidator.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34ABA62F1C2D58F300FE1BEC /* MWMInputEmailValidator.mm */; }; - 34B16C451B72655D000D3A0D /* MWMPedestrianShareAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34B16C441B72655D000D3A0D /* MWMPedestrianShareAlert.mm */; }; 34B646BD1CEB6FC000E0C7A5 /* MWMEditorAdditionalNameTableViewCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34B646BC1CEB6FC000E0C7A5 /* MWMEditorAdditionalNameTableViewCell.mm */; }; 34B646BE1CEB6FC000E0C7A5 /* MWMEditorAdditionalNameTableViewCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34B646BC1CEB6FC000E0C7A5 /* MWMEditorAdditionalNameTableViewCell.mm */; }; 34B646C01CEB6FE000E0C7A5 /* MWMEditorAdditionalNameTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34B646BF1CEB6FE000E0C7A5 /* MWMEditorAdditionalNameTableViewCell.xib */; }; @@ -431,12 +428,11 @@ 6741A9991BF340DE002C974C /* MWMAlertViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F64F19831AB81A00006EAF7E /* MWMAlertViewController.xib */; }; 6741A99A1BF340DE002C974C /* MWMBookmarkColorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F6588E321B15D73100EE1E58 /* MWMBookmarkColorViewController.xib */; }; 6741A99B1BF340DE002C974C /* PlacePageInfoCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = F6CB215B1AEE704D00FB8963 /* PlacePageInfoCell.xib */; }; - 6741A99D1BF340DE002C974C /* MWMPedestrianShareAlert.xib in Resources */ = {isa = PBXBuildFile; fileRef = 347BAC681B733D540010FF78 /* MWMPedestrianShareAlert.xib */; }; 6741A99F1BF340DE002C974C /* 07_roboto_medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = FAF30A94173AB23900818BF6 /* 07_roboto_medium.ttf */; }; 6741A9A21BF340DE002C974C /* CommunityVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = 978D4A241996B0EC00D72CA7 /* CommunityVC.mm */; }; 6741A9A31BF340DE002C974C /* main.mm in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.mm */; }; 6741A9A41BF340DE002C974C /* MWMSearchTabbedViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34CC4C071B81F3B500E44C1F /* MWMSearchTabbedViewController.mm */; }; - 6741A9A51BF340DE002C974C /* MWMShareLocationActivityItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340837151B72451A00B5C185 /* MWMShareLocationActivityItem.mm */; }; + 6741A9A51BF340DE002C974C /* MWMShareActivityItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340837151B72451A00B5C185 /* MWMShareActivityItem.mm */; }; 6741A9A61BF340DE002C974C /* RichTextVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = 978D4A281996C17300D72CA7 /* RichTextVC.mm */; }; 6741A9A71BF340DE002C974C /* UIViewController+Navigation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9747278318338F0C006B7CB7 /* UIViewController+Navigation.mm */; }; 6741A9A81BF340DE002C974C /* MWMFacebookAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BC1E511ACBF98600EF0360 /* MWMFacebookAlert.mm */; }; @@ -497,8 +493,6 @@ 6741A9F41BF340DE002C974C /* CALayer+RuntimeAttributes.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6DBF9B51AA8779300F2EC2C /* CALayer+RuntimeAttributes.mm */; }; 6741A9F51BF340DE002C974C /* BookmarksVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = FA36B80615403A4F004560CC /* BookmarksVC.mm */; }; 6741A9F61BF340DE002C974C /* MWMExtendedPlacePageView.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6ED135A1B18AA930095C6DE /* MWMExtendedPlacePageView.mm */; }; - 6741A9F71BF340DE002C974C /* MWMPedestrianShareAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34B16C441B72655D000D3A0D /* MWMPedestrianShareAlert.mm */; }; - 6741A9F81BF340DE002C974C /* MWMSharePedestrianRoutesToastActivityItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = 347BAC6D1B736BA70010FF78 /* MWMSharePedestrianRoutesToastActivityItem.mm */; }; 6741A9F91BF340DE002C974C /* MWMSearchSuggestionCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34B82AD41B84746E00180497 /* MWMSearchSuggestionCell.mm */; }; 6741A9FA1BF340DE002C974C /* MWMBookmarkColorViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6588E2E1B15D2BC00EE1E58 /* MWMBookmarkColorViewController.mm */; }; 6741A9FC1BF340DE002C974C /* iosOGLContextFactory.mm in Sources */ = {isa = PBXBuildFile; fileRef = A32B6D4B1A14980500E54A65 /* iosOGLContextFactory.mm */; }; @@ -887,8 +881,8 @@ 3406FA171C6E0D8F00E9FAD2 /* MWMMapDownloadDialog.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMMapDownloadDialog.xib; sourceTree = ""; }; 340837111B7243CE00B5C185 /* MWMActivityViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMActivityViewController.h; sourceTree = ""; }; 340837121B7243CE00B5C185 /* MWMActivityViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMActivityViewController.mm; sourceTree = ""; }; - 340837141B72451A00B5C185 /* MWMShareLocationActivityItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMShareLocationActivityItem.h; sourceTree = ""; }; - 340837151B72451A00B5C185 /* MWMShareLocationActivityItem.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMShareLocationActivityItem.mm; sourceTree = ""; }; + 340837141B72451A00B5C185 /* MWMShareActivityItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMShareActivityItem.h; sourceTree = ""; }; + 340837151B72451A00B5C185 /* MWMShareActivityItem.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMShareActivityItem.mm; sourceTree = ""; }; 340C20E11C3E565600111D22 /* MWMCuisineEditorViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMCuisineEditorViewController.h; sourceTree = ""; }; 340C20E21C3E565600111D22 /* MWMCuisineEditorViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMCuisineEditorViewController.mm; sourceTree = ""; }; 340C20E51C3E58B000111D22 /* MWMEditorCommon.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MWMEditorCommon.h; sourceTree = ""; }; @@ -1016,9 +1010,6 @@ 3472EC041B4D44BE0085CB79 /* UIFont+MapsMeFonts.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = "UIFont+MapsMeFonts.mm"; sourceTree = ""; }; 3476B8D51BFDD30B00874594 /* tts-how-to-set-up-voice.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = "tts-how-to-set-up-voice.html"; path = "../../data/tts-how-to-set-up-voice.html"; sourceTree = ""; }; 3476B8DF1BFDD33A00874594 /* tts-how-to-set-up-voice-img */ = {isa = PBXFileReference; lastKnownFileType = folder; name = "tts-how-to-set-up-voice-img"; path = "../../data/tts-how-to-set-up-voice-img"; sourceTree = ""; }; - 347BAC681B733D540010FF78 /* MWMPedestrianShareAlert.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMPedestrianShareAlert.xib; sourceTree = ""; }; - 347BAC6C1B736BA70010FF78 /* MWMSharePedestrianRoutesToastActivityItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMSharePedestrianRoutesToastActivityItem.h; sourceTree = ""; }; - 347BAC6D1B736BA70010FF78 /* MWMSharePedestrianRoutesToastActivityItem.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMSharePedestrianRoutesToastActivityItem.mm; sourceTree = ""; }; 347D5CA11D376B9F00FA28DD /* MWMSearchObserver.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MWMSearchObserver.h; sourceTree = ""; }; 347D5CA21D376C2C00FA28DD /* MWMLocationObserver.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MWMLocationObserver.h; sourceTree = ""; }; 347D7C671C2C0703006B2D0A /* UITextView+RuntimeAttributes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UITextView+RuntimeAttributes.h"; sourceTree = ""; }; @@ -1101,8 +1092,6 @@ 34ABA62B1C2D57D500FE1BEC /* MWMInputPasswordValidator.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMInputPasswordValidator.mm; sourceTree = ""; }; 34ABA62E1C2D58F300FE1BEC /* MWMInputEmailValidator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMInputEmailValidator.h; sourceTree = ""; }; 34ABA62F1C2D58F300FE1BEC /* MWMInputEmailValidator.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMInputEmailValidator.mm; sourceTree = ""; }; - 34B16C431B72655D000D3A0D /* MWMPedestrianShareAlert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMPedestrianShareAlert.h; sourceTree = ""; }; - 34B16C441B72655D000D3A0D /* MWMPedestrianShareAlert.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMPedestrianShareAlert.mm; sourceTree = ""; }; 34B646BB1CEB6FC000E0C7A5 /* MWMEditorAdditionalNameTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMEditorAdditionalNameTableViewCell.h; sourceTree = ""; }; 34B646BC1CEB6FC000E0C7A5 /* MWMEditorAdditionalNameTableViewCell.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMEditorAdditionalNameTableViewCell.mm; sourceTree = ""; }; 34B646BF1CEB6FE000E0C7A5 /* MWMEditorAdditionalNameTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMEditorAdditionalNameTableViewCell.xib; sourceTree = ""; }; @@ -1911,10 +1900,8 @@ children = ( 340837111B7243CE00B5C185 /* MWMActivityViewController.h */, 340837121B7243CE00B5C185 /* MWMActivityViewController.mm */, - 340837141B72451A00B5C185 /* MWMShareLocationActivityItem.h */, - 340837151B72451A00B5C185 /* MWMShareLocationActivityItem.mm */, - 347BAC6C1B736BA70010FF78 /* MWMSharePedestrianRoutesToastActivityItem.h */, - 347BAC6D1B736BA70010FF78 /* MWMSharePedestrianRoutesToastActivityItem.mm */, + 340837141B72451A00B5C185 /* MWMShareActivityItem.h */, + 340837151B72451A00B5C185 /* MWMShareActivityItem.mm */, F6A218471CA3F26800BE2CC6 /* MWMEditorViralActivityItem.h */, F6A218481CA3F26800BE2CC6 /* MWMEditorViralActivityItem.mm */, ); @@ -2234,16 +2221,6 @@ path = InputValidators; sourceTree = ""; }; - 34B16C421B72653B000D3A0D /* PedestrianShareAlert */ = { - isa = PBXGroup; - children = ( - 34B16C431B72655D000D3A0D /* MWMPedestrianShareAlert.h */, - 34B16C441B72655D000D3A0D /* MWMPedestrianShareAlert.mm */, - 347BAC681B733D540010FF78 /* MWMPedestrianShareAlert.xib */, - ); - path = PedestrianShareAlert; - sourceTree = ""; - }; 34B82AB31B83616A00180497 /* HistoryTab */ = { isa = PBXGroup; children = ( @@ -2702,7 +2679,6 @@ F6BBF2C31B4FFB56000CF8E2 /* LocationAlert */, F64F19801AB81A00006EAF7E /* AlertController */, F6BC1E4F1ACBF97000EF0360 /* FacebookAlert */, - 34B16C421B72653B000D3A0D /* PedestrianShareAlert */, F64F19841AB81A00006EAF7E /* BaseAlert */, F61579301AC2CE760032D8E9 /* RateAlert */, F64F19871AB81A00006EAF7E /* DefaultAlert */, @@ -3421,7 +3397,6 @@ F64F199A1AB81A00006EAF7E /* MWMAlertViewController.xib in Resources */, F6588E331B15D73100EE1E58 /* MWMBookmarkColorViewController.xib in Resources */, F6CB215C1AEE704D00FB8963 /* PlacePageInfoCell.xib in Resources */, - 347BAC691B733D540010FF78 /* MWMPedestrianShareAlert.xib in Resources */, FAF30A95173AB23900818BF6 /* 07_roboto_medium.ttf in Resources */, 34E0EED01CC51B1D008E4919 /* MWMMapDownloaderButtonTableViewCell.xib in Resources */, ); @@ -3567,7 +3542,6 @@ 6741A9991BF340DE002C974C /* MWMAlertViewController.xib in Resources */, 6741A99A1BF340DE002C974C /* MWMBookmarkColorViewController.xib in Resources */, 6741A99B1BF340DE002C974C /* PlacePageInfoCell.xib in Resources */, - 6741A99D1BF340DE002C974C /* MWMPedestrianShareAlert.xib in Resources */, 6741A99F1BF340DE002C974C /* 07_roboto_medium.ttf in Resources */, 34E0EED11CC51B1D008E4919 /* MWMMapDownloaderButtonTableViewCell.xib in Resources */, ); @@ -3613,7 +3587,7 @@ 978D4A251996B0EC00D72CA7 /* CommunityVC.mm in Sources */, 1D60589B0D05DD56006BFB54 /* main.mm in Sources */, 34CC4C091B81F3B500E44C1F /* MWMSearchTabbedViewController.mm in Sources */, - 340837161B72451A00B5C185 /* MWMShareLocationActivityItem.mm in Sources */, + 340837161B72451A00B5C185 /* MWMShareActivityItem.mm in Sources */, 34F9FB901C43AF2400F71201 /* MWMStreetEditorEditTableViewCell.mm in Sources */, 978D4A291996C17300D72CA7 /* RichTextVC.mm in Sources */, 9747278418338F0C006B7CB7 /* UIViewController+Navigation.mm in Sources */, @@ -3734,8 +3708,6 @@ F6ED135B1B18AA930095C6DE /* MWMExtendedPlacePageView.mm in Sources */, 3418CEAE1CBF9E3300641B25 /* MWMNoMapsViewController.mm in Sources */, 3401CD7D1C3CF1BE0028C6F8 /* MWMEditorSwitchTableViewCell.mm in Sources */, - 34B16C451B72655D000D3A0D /* MWMPedestrianShareAlert.mm in Sources */, - 347BAC6E1B736BA70010FF78 /* MWMSharePedestrianRoutesToastActivityItem.mm in Sources */, 34B82AD61B84746E00180497 /* MWMSearchSuggestionCell.mm in Sources */, F6C641B01C15BBE6008FCAF3 /* MWMRecentTrackSettingsController.mm in Sources */, 341F99F11C6B4288001C67B8 /* MWMMapDownloaderSearchDataSource.mm in Sources */, @@ -3839,7 +3811,7 @@ 34FED5511D21121000183B1B /* CLLocation+Mercator.mm in Sources */, 6741A9A31BF340DE002C974C /* main.mm in Sources */, 6741A9A41BF340DE002C974C /* MWMSearchTabbedViewController.mm in Sources */, - 6741A9A51BF340DE002C974C /* MWMShareLocationActivityItem.mm in Sources */, + 6741A9A51BF340DE002C974C /* MWMShareActivityItem.mm in Sources */, 34F9FB911C43AF2400F71201 /* MWMStreetEditorEditTableViewCell.mm in Sources */, 6741A9A61BF340DE002C974C /* RichTextVC.mm in Sources */, 6741A9A71BF340DE002C974C /* UIViewController+Navigation.mm in Sources */, @@ -3950,9 +3922,7 @@ 56C74C391C74A3BC00B71B9F /* MWMInputEmailValidator.mm in Sources */, 6741A9F51BF340DE002C974C /* BookmarksVC.mm in Sources */, 6741A9F61BF340DE002C974C /* MWMExtendedPlacePageView.mm in Sources */, - 6741A9F71BF340DE002C974C /* MWMPedestrianShareAlert.mm in Sources */, 347FD8741C60B2CE002FB65E /* MWMOpeningHoursClosedSpanTableViewCell.mm in Sources */, - 6741A9F81BF340DE002C974C /* MWMSharePedestrianRoutesToastActivityItem.mm in Sources */, 3490D2E11CE9DD2500D0B838 /* MWMSideButtonsView.mm in Sources */, 6741A9F91BF340DE002C974C /* MWMSearchSuggestionCell.mm in Sources */, 34ABA61C1C2D4DCC00FE1BEC /* UITextField+RuntimeAttributes.mm in Sources */,