Merge pull request #5156 from igrechuhin/cleanup

[ios] Cleanup.
This commit is contained in:
Sergey Yershov 2017-01-10 17:58:58 +03:00 committed by GitHub
commit 26d472ea19
151 changed files with 160 additions and 1978 deletions

View file

@ -2,7 +2,6 @@
#import "BookmarksVC.h"
#import "MWMCommon.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "UIImageView+Coloring.h"
#include "Framework.h"
@ -53,7 +52,7 @@
label.textColor = [UIColor blackPrimaryText];
[m_hint addSubview:label];
}
UILabel * label = [m_hint.subviews objectAtIndex:0];
UILabel * label = m_hint.subviews.firstObject;
label.bounds = CGRectInset(rect, offset, offset);
[label sizeToIntegralFit];
m_hint.bounds = CGRectMake(0, 0, rect.size.width, label.bounds.size.height + 2 * offset);
@ -239,7 +238,7 @@
[[NSNotificationCenter defaultCenter] postNotificationName:BOOKMARK_CATEGORY_DELETED_NOTIFICATION object:@(indexPath.row)];
Framework & f = GetFramework();
f.DeleteBmCategory(indexPath.row);
[self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
[self.tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];
// Disable edit mode if no categories are left
if (!f.GetBmCategoriesCount())
{

View file

@ -10,7 +10,6 @@
#import "MapViewController.h"
#import "MapsAppDelegate.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#include "Framework.h"
@ -140,7 +139,7 @@ extern NSString * const kBookmarksChangedNotification = @"BookmarksChangedNotifi
string dist;
if (measurement_utils::FormatDistance(tr->GetLengthMeters(), dist))
//Change Length before release!!!
cell.detailTextLabel.text = [NSString stringWithFormat:@"%@ %@", L(@"length"), [NSString stringWithUTF8String:dist.c_str()]];
cell.detailTextLabel.text = [NSString stringWithFormat:@"%@ %@", L(@"length"), @(dist.c_str())];
else
cell.detailTextLabel.text = nil;
const dp::Color c = tr->GetColor(0);
@ -247,9 +246,9 @@ extern NSString * const kBookmarksChangedNotification = @"BookmarksChangedNotifi
if (cat)
{
[Statistics logEvent:kStatEventName(kStatBookmarks, kStatExport)];
NSMutableString * catName = [NSMutableString stringWithUTF8String:cat->GetName().c_str()];
NSString * catName = @(cat->GetName().c_str());
if (![catName length])
[catName setString:@"MapsMe"];
catName = @"MapsMe";
NSString * filePath = @(cat->GetFileName().c_str());
NSMutableString * kmzFile = [NSMutableString stringWithString:filePath];
@ -309,7 +308,7 @@ extern NSString * const kBookmarksChangedNotification = @"BookmarksChangedNotifi
[self calculateSections];
//We can delete the row with animation, if number of sections stay the same.
if (previousNumberOfSections == m_numberOfSections)
[self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
[self.tableView deleteRowsAtIndexPaths:@[ indexPath ] withRowAnimation:UITableViewRowAnimationFade];
else
[self.tableView reloadData];
if (cat->GetUserMarkCount() + cat->GetTracksCount() == 0)

View file

@ -1,5 +1,4 @@
#import "CALayer+RuntimeAttributes.h"
#import "UIColor+MapsMeColor.h"
@implementation CALayer (RuntimeAttributes)

View file

@ -2,7 +2,7 @@
@interface UIButton (RuntimeAttributes)
@property(nonatomic) NSString * localizedText;
@property(copy, nonatomic) NSString * localizedText;
- (void)setBackgroundColorName:(NSString *)colorName;
- (NSString *)backgroundColorName;

View file

@ -1,7 +1,5 @@
#import <objc/runtime.h>
#import "UIButton+RuntimeAttributes.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
@implementation UIButton (RuntimeAttributes)

View file

@ -1,5 +1,4 @@
#import "MWMCommon.h"
#import "UIFont+MapsMeFonts.h"
NSString * const kMediumFontName = @"HelveticaNeue-Medium";
NSString * const kLightFontName = @"HelveticaNeue-Light";

View file

@ -1,5 +1,4 @@
#import "MWMCommon.h"
#import "UIColor+MapsMeColor.h"
#import "UIImageView+Coloring.h"
#import <objc/runtime.h>

View file

@ -1,7 +1,6 @@
#import "UIKitCategories.h"
#import "MWMCommon.h"
#import "UIButton+RuntimeAttributes.h"
#import "UIColor+MapsMeColor.h"
#import "UIImageView+Coloring.h"
#import <Crashlytics/Crashlytics.h>

View file

@ -1,3 +1,3 @@
@interface UILabel (RuntimeAttributes)
@property (nonatomic) NSString * localizedText;
@property (copy, nonatomic) NSString * localizedText;
@end

View file

@ -1,6 +1,4 @@
#import "UILabel+RuntimeAttributes.h"
#import "UIFont+MapsMeFonts.h"
#import "UIColor+MapsMeColor.h"
// Runtime attributes for setting localized text in Xib.

View file

@ -1,5 +1,4 @@
#import "UISwitch+RuntimeAttributes.h"
#import "UIColor+MapsMeColor.h"
@implementation UISwitch (RuntimeAttributes)

View file

@ -2,7 +2,7 @@
@interface UITextField (RuntimeAttributes)
@property (nonatomic) NSString * localizedPlaceholder;
@property (copy, nonatomic) NSString * localizedPlaceholder;
@property (nonatomic) MWMInputValidator * validator;
@property (nonatomic, readonly) BOOL isValid;

View file

@ -1,6 +1,4 @@
#import "MWMInputValidatorFactory.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
#import "UITextField+RuntimeAttributes.h"
#import <objc/runtime.h>

View file

@ -6,6 +6,6 @@
@interface MWMTextView (RuntimeAttributes)
@property (nonatomic) NSString * localizedPlaceholder;
@property (copy, nonatomic) NSString * localizedPlaceholder;
@end

View file

@ -1,6 +1,4 @@
#import "UIFont+MapsMeFonts.h"
#import "UITextView+RuntimeAttributes.h"
#import "UIColor+MapsMeColor.h"
@implementation UITextView (RuntimeAttributes)

View file

@ -1,4 +1,3 @@
#import "UIColor+MapsMeColor.h"
#import "UIView+RuntimeAttributes.h"
@implementation UIView (RuntimeAttributes)

View file

@ -1,5 +1,4 @@
#import "AddSetTableViewCell.h"
#import "UIColor+MapsMeColor.h"
@interface AddSetTableViewCell () <UITextFieldDelegate>

View file

@ -33,7 +33,7 @@
{
UIView * circleView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, diameter, diameter)];
circleView.backgroundColor = [UIColor clearColor];
CircleView * circle = [[CircleView alloc] initWithFrame:CGRectMake(0.5, 0.5, diameter - 1, diameter - 1) andColor:color];
CircleView * circle = [[self alloc] initWithFrame:CGRectMake(0.5, 0.5, diameter - 1, diameter - 1) andColor:color];
[circleView addSubview:circle];
return circleView;
}

View file

@ -44,7 +44,7 @@ static Tcolor const g_color [] =
UILabel * header = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, customWidth, HEADERHEIGHT)];
header.backgroundColor = [UIColor clearColor];
header.text = NSLocalizedString(@"bookmark_color", nil);
header.text = L(@"bookmark_color");
header.font = [UIFont fontWithName:@"Helvetica" size:20];
header.textAlignment = NSTextAlignmentCenter;
header.textColor = [UIColor colorWithRed:51/255.f green:204/255.f blue:255/255.f alpha:1];
@ -59,7 +59,7 @@ static Tcolor const g_color [] =
for (size_t i = 0; i < 8; ++i)
{
UIButton * button = [[UIButton alloc] initWithFrame:CGRectMake(BORDERMARGIN + (i % 4) * (buttonDiameter + BUTTONMARGIN), BORDERMARGIN + (i / 4) * (buttonDiameter + BUTTONMARGINHEIGHT) + HEADERHEIGHT + LINEHEIGHT, buttonDiameter, buttonDiameter)];
UIColor * c = [ColorPickerView buttonColor:i];
UIColor * c = [[self class] buttonColor:i];
if (i != selectedIndex)
[button setBackgroundImage:[CircleView createCircleImageWith:buttonDiameter andColor:c] forState:UIControlStateNormal];
else

View file

@ -1,6 +1,5 @@
#import "MWMCommon.h"
#import "MWMButton.h"
#import "UIColor+MapsMeColor.h"
namespace
{

View file

@ -50,7 +50,7 @@ CGFloat const kTopOffset = 25.;
self = [super init];
if (self)
{
[[NSBundle mainBundle] loadNibNamed:[MWMDropDown className] owner:self options:nil];
[[NSBundle mainBundle] loadNibNamed:[[self class] className] owner:self options:nil];
self.superview = view;
}
return self;

View file

@ -1,7 +1,6 @@
#import "MWMMailViewController.h"
#import "MWMCommon.h"
#import "MWMToast.h"
#import "UIColor+MapsMeColor.h"
@implementation MWMMailViewController

View file

@ -3,7 +3,6 @@
#import "MWMController.h"
#import "MWMToast.h"
#import "MapsAppDelegate.h"
#import "UIColor+MapsMeColor.h"
#import "UIViewController+Navigation.h"
#import <SafariServices/SafariServices.h>

View file

@ -1,5 +1,4 @@
#import "MWMStartButton.h"
#import "UIColor+MapsMeColor.h"
@implementation MWMStartButton

View file

@ -1,5 +1,4 @@
#import "MWMStopButton.h"
#import "UIColor+MapsMeColor.h"
@implementation MWMStopButton

View file

@ -3,7 +3,6 @@
#import "MWMAlertViewController.h"
#import "MWMTableViewCell.h"
#import "MWMTableViewController.h"
#import "UIColor+MapsMeColor.h"
#import "3party/Alohalytics/src/alohalytics_objc.h"

View file

@ -219,7 +219,7 @@ static NSString * const kDefaultAlertNibName = @"MWMDefaultAlert";
TMWMVoidBlock action = ^{
GetFramework().SwitchMyPositionNextMode();
};
return [MWMDefaultAlert defaultAlertWithTitle:L(@"dialog_routing_location_turn_on")
return [self defaultAlertWithTitle:L(@"dialog_routing_location_turn_on")
message:L(@"dialog_routing_location_unknown_turn_on")
rightButtonTitle:L(@"turn_on")
leftButtonTitle:L(@"later")

View file

@ -7,7 +7,6 @@
#import "MWMFrameworkListener.h"
#import "MWMStorage.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "UILabel+RuntimeAttributes.h"
#include "Framework.h"

View file

@ -26,7 +26,7 @@ namespace
+ (nonnull instancetype)alert
{
MWMEditorViralAlert * alert = [[[NSBundle mainBundle] loadNibNamed:[MWMEditorViralAlert className] owner:nil options:nil] firstObject];
MWMEditorViralAlert * alert = [[[NSBundle mainBundle] loadNibNamed:[self className] owner:nil options:nil] firstObject];
alert.indexOfMessage = rand() % kMessages.size();
NSString * message = kMessages[alert.indexOfMessage];
if (alert.indexOfMessage == 1)
@ -36,8 +36,9 @@ namespace
}
alert.message.text = message;
NSMutableDictionary <NSString *, NSString *> * info = [@{kStatValue : alert.statMessage} mutableCopy];
if (NSString * un = osm_auth_ios::OSMUserName())
[info setObject:un forKey:kStatOSMUserName];
NSString * un = osm_auth_ios::OSMUserName();
if (un)
info[kStatOSMUserName] = un;
[Statistics logEvent:kStatEditorSecondTimeShareShow withParameters:info];
return alert;

View file

@ -12,7 +12,7 @@ extern NSString * const kMap2GoogleLoginSegue;
+ (instancetype)alert
{
MWMOsmAuthAlert * alert = [[[NSBundle mainBundle] loadNibNamed:[MWMOsmAuthAlert className] owner:nil options:nil] firstObject];
MWMOsmAuthAlert * alert = [[[NSBundle mainBundle] loadNibNamed:[self className] owner:nil options:nil] firstObject];
return alert;
}

View file

@ -14,7 +14,7 @@
+ (instancetype)alertWithBlock:(MWMStringBlock)block
{
MWMPlaceDoesntExistAlert * alert =
[[[NSBundle mainBundle] loadNibNamed:[MWMPlaceDoesntExistAlert className]
[[[NSBundle mainBundle] loadNibNamed:[self className]
owner:nil
options:nil] firstObject];
alert.block = block;

View file

@ -22,7 +22,7 @@ NSString * const kStatisticsEvent = @"Mobile Internet Settings Alert";
{
[Statistics logEvent:kStatisticsEvent withParameters:@{kStatAction : kStatOpen}];
MWMMobileInternetAlert * alert =
[[[NSBundle mainBundle] loadNibNamed:[MWMMobileInternetAlert className] owner:nil options:nil]
[[[NSBundle mainBundle] loadNibNamed:[self className] owner:nil options:nil]
firstObject];
alert.completionBlock = block;
return alert;

View file

@ -3,7 +3,6 @@
#import "MWMAlertViewController.h"
#import "MWMMailViewController.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "3party/Alohalytics/src/alohalytics_objc.h"

View file

@ -2,8 +2,6 @@
#import "MWMCommon.h"
#import "MWMAlertViewController.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
static CGFloat const kMinimumOffset = 20.;
static NSString * const kStatisticsEvent = @"Routing Disclaimer Alert";
@ -22,7 +20,7 @@ static NSString * const kStatisticsEvent = @"Routing Disclaimer Alert";
{
[Statistics logEvent:kStatisticsEvent withParameters:@{kStatAction : kStatOpen}];
MWMRoutingDisclaimerAlert * alert =
[[[NSBundle mainBundle] loadNibNamed:[MWMRoutingDisclaimerAlert className]
[[[NSBundle mainBundle] loadNibNamed:[self className]
owner:nil
options:nil] firstObject];
NSString * message = [NSString stringWithFormat:@"%@\n\n%@\n\n%@\n\n%@\n\n%@",
@ -59,7 +57,7 @@ static NSString * const kStatisticsEvent = @"Routing Disclaimer Alert";
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)orientation
{
UIView * superview = self.superview ? self.superview : UIApplication.sharedApplication.keyWindow;
UIView * superview = self.superview ?: UIApplication.sharedApplication.keyWindow;
CGFloat const height = UIInterfaceOrientationIsLandscape(orientation)
? MIN(superview.width, superview.height)
: MAX(superview.width, superview.height);

View file

@ -23,7 +23,7 @@ NSString * const kStatisticsEvent = @"Search No Results Alert";
{
[Statistics logEvent:kStatisticsEvent withParameters:@{kStatAction : kStatOpen}];
MWMSearchNoResultsAlert * alert = [
[[NSBundle mainBundle] loadNibNamed:[MWMSearchNoResultsAlert className] owner:nil options:nil]
[[NSBundle mainBundle] loadNibNamed:[self className] owner:nil options:nil]
firstObject];
return alert;
}

View file

@ -1,6 +1,5 @@
#import "MWMToast.h"
#import "MWMCommon.h"
#import "UIColor+MapsMeColor.h"
namespace
{
@ -22,14 +21,14 @@ NSUInteger const kWordsPerSecond = 3;
+ (void)showWithText:(NSString *)text
{
MWMToast * toast = [MWMToast toast];
MWMToast * toast = [self toast];
toast.label.text = text;
toast.label.textColor = [UIColor blackPrimaryText];
toast.rootView.backgroundColor = [UIColor toastBackground];
[toast show];
}
+ (BOOL)affectsStatusBar { return [MWMToast toast].rootView.superview != nil; }
+ (BOOL)affectsStatusBar { return [self toast].rootView.superview != nil; }
+ (UIStatusBarStyle)preferredStatusBarStyle
{
setStatusBarBackgroundColor([UIColor clearColor]);
@ -51,7 +50,7 @@ NSUInteger const kWordsPerSecond = 3;
self = [super init];
if (self)
{
[[NSBundle mainBundle] loadNibNamed:[MWMToast className] owner:self options:nil];
[[NSBundle mainBundle] loadNibNamed:[[self class] className] owner:self options:nil];
self.rootView.translatesAutoresizingMaskIntoConstraints = NO;
}
return self;

View file

@ -24,7 +24,7 @@ UINib * const progressViewNib =
+ (nonnull instancetype)downloaderProgressForParentView:(nonnull UIView *)parentView
{
MWMCircularProgress * progress = [[MWMCircularProgress alloc] initWithParentView:parentView];
MWMCircularProgress * progress = [[self alloc] initWithParentView:parentView];
progress.rootView.suspendRefreshProgress = YES;

View file

@ -1,6 +1,5 @@
#import "MWMCircularProgressView.h"
#import "MWMCommon.h"
#import "UIColor+MapsMeColor.h"
#import "UIImageView+Coloring.h"
#include "std/map.hpp"

View file

@ -1,7 +1,6 @@
#import "MWMCommon.h"
#import "MWMAuthorizationCommon.h"
#import "UIButton+RuntimeAttributes.h"
#import "UIColor+MapsMeColor.h"
#include "base/logging.hpp"
#include "editor/server_api.hpp"

View file

@ -5,7 +5,6 @@
#import "MWMAuthorizationLoginViewController.h"
#import "MWMAuthorizationWebViewLoginViewController.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#include "Framework.h"

View file

@ -4,7 +4,6 @@
#import "MWMCircularProgress.h"
#import "MWMSettingsViewController.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "UITextField+RuntimeAttributes.h"
#include "base/logging.hpp"

View file

@ -1,7 +1,5 @@
#import "MWMCommon.h"
#import "MWMBottomMenuCollectionViewCell.h"
#import "UIFont+MapsMeFonts.h"
#import "UIColor+MapsMeColor.h"
#import "UIImageView+Coloring.h"
@interface MWMBottomMenuCollectionViewCell ()

View file

@ -7,8 +7,6 @@
#import "MWMSideButtons.h"
#import "MapsAppDelegate.h"
#import "UIButton+RuntimeAttributes.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
#import "UIImageView+Coloring.h"
#import "UIView+RuntimeAttributes.h"

View file

@ -20,10 +20,7 @@
#import "MapsAppDelegate.h"
#import "Statistics.h"
#import "SwiftBridge.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
#import "UIImageView+Coloring.h"
#import "UIKitCategories.h"
#import "UIViewController+Navigation.h"
#import "3party/Alohalytics/src/alohalytics_objc.h"
@ -194,7 +191,7 @@ typedef NS_ENUM(NSUInteger, MWMBottomMenuViewCell) {
attributes:routingLegendAttributes]];
self.distanceWithLegendLabel.attributedText = distance;
NSString * currentSpeed = info.speed ? info.speed : @"0";
NSString * currentSpeed = info.speed ?: @"0";
self.speedLabel.text = currentSpeed;
self.speedLegendLabel.text = info.speedUnits;
NSMutableAttributedString * speed =

View file

@ -21,7 +21,6 @@
#import "MapViewController.h"
#import "MapsAppDelegate.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "3party/Alohalytics/src/alohalytics_objc.h"

View file

@ -5,7 +5,6 @@
#import "MWMSettings.h"
#import "MWMSideButtonsView.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "3party/Alohalytics/src/alohalytics_objc.h"

View file

@ -7,7 +7,6 @@
#import "MWMToast.h"
#import "MWMTrafficManager.h"
#import "MapViewController.h"
#import "UIColor+MapsMeColor.h"
namespace
{

View file

@ -1,5 +0,0 @@
#import "MWMWelcomeController.h"
@interface MWMWhatsNewBookingBicycleRoutingController : MWMWelcomeController
@end

View file

@ -1,73 +0,0 @@
#import "MWMPageController.h"
#import "MWMWhatsNewBookingBicycleRoutingController.h"
@interface MWMWhatsNewBookingBicycleRoutingController ()
@property (weak, nonatomic) IBOutlet UIView * containerView;
@property (weak, nonatomic) IBOutlet UIImageView * image;
@property (weak, nonatomic) IBOutlet UILabel * alertTitle;
@property (weak, nonatomic) IBOutlet UILabel * alertText;
@property (weak, nonatomic) IBOutlet UIButton * nextPageButton;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * containerWidth;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * containerHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * imageMinHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * imageHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * titleTopOffset;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * titleImageOffset;
@end
namespace
{
NSArray<TMWMWelcomeConfigBlock> * pagesConfigBlocks = @[
[^(MWMWhatsNewBookingBicycleRoutingController * controller) {
controller.image.image = [UIImage imageNamed:@"img_booking"];
controller.alertTitle.text = L(@"whatsnew_booking_header");
controller.alertText.text = L(@"whatsnew_booking_message");
controller.nextPageButton.hidden = YES;
} copy],
[^(MWMWhatsNewBookingBicycleRoutingController * controller) {
controller.image.image = [UIImage imageNamed:@"img_bikecycle_navigation"];
controller.alertTitle.text = L(@"whatsnew_cycle_navigation_header");
controller.alertText.text = L(@"whatsnew_cycle_navigation_message");
controller.nextPageButton.hidden = YES;
} copy]
];
} // namespace
@implementation MWMWhatsNewBookingBicycleRoutingController
+ (NSString *)udWelcomeWasShownKey
{
return @"WhatsNewBookingBicycleRoutingWasShown";
}
+ (NSArray<TMWMWelcomeConfigBlock> *)pagesConfig
{
return pagesConfigBlocks;
}
- (IBAction)close
{
[self.pageController close];
}
#pragma mark - Properties
- (void)setSize:(CGSize)size
{
super.size = size;
CGSize const newSize = super.size;
CGFloat const width = newSize.width;
CGFloat const height = newSize.height;
BOOL const hideImage = (self.imageHeight.multiplier * height <= self.imageMinHeight.constant);
self.titleImageOffset.priority = hideImage ? UILayoutPriorityDefaultLow : UILayoutPriorityDefaultHigh;
self.image.hidden = hideImage;
self.containerWidth.constant = width;
self.containerHeight.constant = height;
}
@end

View file

@ -1,5 +0,0 @@
#import "MWMWelcomeController.h"
@interface MWMWhatsNewDownloaderEditorController : MWMWelcomeController
@end

View file

@ -1,82 +0,0 @@
#import "MWMPageController.h"
#import "MWMWhatsNewDownloaderEditorController.h"
@interface MWMWhatsNewDownloaderEditorController ()
@property (weak, nonatomic) IBOutlet UIView * containerView;
@property (weak, nonatomic) IBOutlet UIImageView * image;
@property (weak, nonatomic) IBOutlet UILabel * alertTitle;
@property (weak, nonatomic) IBOutlet UILabel * alertText;
@property (weak, nonatomic) IBOutlet UIButton * nextPageButton;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * containerWidth;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * containerHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * imageMinHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * imageHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * titleTopOffset;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * titleImageOffset;
@end
namespace
{
NSArray<TMWMWelcomeConfigBlock> * pagesConfigBlocks = @[
[^(MWMWhatsNewDownloaderEditorController * controller) {
controller.image.image = [UIImage imageNamed:@"img_whatsnew_migration"];
controller.alertTitle.text = L(@"whatsnew_smallmwm_header");
controller.alertText.text = L(@"whatsnew_smallmwm_message");
[controller.nextPageButton setTitle:L(@"whats_new_next_button") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(nextPage)
forControlEvents:UIControlEventTouchUpInside];
} copy],
[^(MWMWhatsNewDownloaderEditorController * controller) {
controller.image.image = [UIImage imageNamed:@"img_whatsnew_editdata"];
controller.alertTitle.text = L(@"whatsnew_editor_title");
controller.alertText.text = [NSString stringWithFormat:@"%@\n\n%@", L(@"whatsnew_editor_message_1"), L(@"whatsnew_editor_message_2")];
[controller.nextPageButton setTitle:L(@"whats_new_next_button") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(nextPage)
forControlEvents:UIControlEventTouchUpInside];
} copy],
[^(MWMWhatsNewDownloaderEditorController * controller) {
controller.image.image = [UIImage imageNamed:@"img_whatsnew_update_search"];
controller.alertTitle.text = L(@"whatsnew_search_header");
controller.alertText.text = L(@"whatsnew_search_message");
[controller.nextPageButton setTitle:L(@"done") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(close)
forControlEvents:UIControlEventTouchUpInside];
} copy]
];
} // namespace
@implementation MWMWhatsNewDownloaderEditorController
+ (NSString *)udWelcomeWasShownKey
{
return @"WhatsNewWithDownloaderEditorSearchWasShown";
}
+ (NSArray<TMWMWelcomeConfigBlock> *)pagesConfig
{
return pagesConfigBlocks;
}
#pragma mark - Properties
- (void)setSize:(CGSize)size
{
super.size = size;
CGSize const newSize = super.size;
CGFloat const width = newSize.width;
CGFloat const height = newSize.height;
BOOL const hideImage = (self.imageHeight.multiplier * height <= self.imageMinHeight.constant);
self.titleImageOffset.priority = hideImage ? UILayoutPriorityDefaultLow : UILayoutPriorityDefaultHigh;
self.image.hidden = hideImage;
self.containerWidth.constant = width;
self.containerHeight.constant = height;
}
@end

View file

@ -1,5 +0,0 @@
#import "MWMWelcomeController.h"
@interface MWMWhatsNewEditorController : MWMWelcomeController
@end

View file

@ -1,100 +0,0 @@
#import "MapsAppDelegate.h"
#import "MapViewController.h"
#import "MWMPageController.h"
#import "MWMWhatsNewEditorController.h"
#include "platform/local_country_file_utils.hpp"
@interface MWMWhatsNewEditorController ()
@property (weak, nonatomic) IBOutlet UIView * containerView;
@property (weak, nonatomic) IBOutlet UIImageView * image;
@property (weak, nonatomic) IBOutlet UILabel * alertTitle;
@property (weak, nonatomic) IBOutlet UILabel * alertText;
@property (weak, nonatomic) IBOutlet UIButton * primaryButton;
@property (weak, nonatomic) IBOutlet UIButton * secondaryButton;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * containerWidth;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * containerHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * imageMinHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * imageHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * titleTopOffset;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * titleImageOffset;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * buttonsSpacing;
@end
namespace
{
NSArray<TMWMWelcomeConfigBlock> * pagesConfigBlocks = @[
[^(MWMWhatsNewEditorController * controller) {
controller.image.image = [UIImage imageNamed:@"img_editor_upd"];
controller.alertTitle.text = L(@"whatsnew_update_editor_title");
MWMPageController * pageController = controller.pageController;
if (platform::migrate::NeedMigrate())
{
controller.alertText.text =
[NSString stringWithFormat:@"%@\n\n%@", L(@"whatsnew_update_editor_message"),
L(@"whatsnew_update_editor_message_update")];
[controller.primaryButton setTitle:L(@"downloader_update_all_button")
forState:UIControlStateNormal];
[controller.primaryButton addTarget:controller
action:@selector(openMigration)
forControlEvents:UIControlEventTouchUpInside];
[controller.secondaryButton setTitle:L(@"not_now")
forState:UIControlStateNormal];
[controller.secondaryButton addTarget:pageController
action:@selector(close)
forControlEvents:UIControlEventTouchUpInside];
}
else
{
controller.alertText.text = L(@"whatsnew_update_editor_message");
controller.secondaryButton.hidden = YES;
controller.buttonsSpacing.priority = UILayoutPriorityDefaultLow;
[controller.primaryButton setTitle:L(@"done")
forState:UIControlStateNormal];
[controller.primaryButton addTarget:pageController
action:@selector(close)
forControlEvents:UIControlEventTouchUpInside];
}
} copy]
];
} // namespace
@implementation MWMWhatsNewEditorController
+ (NSString *)udWelcomeWasShownKey
{
return @"WhatsNewWithEditorWasShown";
}
+ (NSArray<TMWMWelcomeConfigBlock> *)pagesConfig
{
return pagesConfigBlocks;
}
- (void)openMigration
{
[self.pageController close];
[[MapViewController controller] openMigration];
}
#pragma mark - Properties
- (void)setSize:(CGSize)size
{
super.size = size;
CGSize const newSize = super.size;
CGFloat const width = newSize.width;
CGFloat const height = newSize.height;
BOOL const hideImage = (self.imageHeight.multiplier * height <= self.imageMinHeight.constant);
self.titleImageOffset.priority = hideImage ? UILayoutPriorityDefaultLow : UILayoutPriorityDefaultHigh;
self.image.hidden = hideImage;
self.containerWidth.constant = width;
self.containerHeight.constant = height;
}
@end

View file

@ -1,5 +0,0 @@
#import "MWMWelcomeController.h"
@interface MWMWhatsNewNavigationController : MWMWelcomeController
@end

View file

@ -1,76 +0,0 @@
#import "MWMWhatsNewNavigationController.h"
#import "MWMPageController.h"
@interface MWMWhatsNewNavigationController ()
@property(weak, nonatomic) IBOutlet UIView * containerView;
@property(weak, nonatomic) IBOutlet UIImageView * image;
@property(weak, nonatomic) IBOutlet UILabel * alertTitle;
@property(weak, nonatomic) IBOutlet UILabel * alertText;
@property(weak, nonatomic) IBOutlet UIButton * nextPageButton;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * containerWidth;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * containerHeight;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * imageMinHeight;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * imageHeight;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * titleTopOffset;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * titleImageOffset;
@end
namespace
{
NSArray<TMWMWelcomeConfigBlock> * pagesConfigBlocks = @[
[^(MWMWhatsNewNavigationController * controller) {
controller.image.image = [UIImage imageNamed:@"img_whatsnew_car_navigation"];
controller.alertTitle.text = L(@"whatsnew_car_navigation_header");
controller.alertText.text = L(@"whatsnew_car_navigation_message");
[controller.nextPageButton setTitle:L(@"whats_new_next_button") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(nextPage)
forControlEvents:UIControlEventTouchUpInside];
} copy],
[^(MWMWhatsNewNavigationController * controller) {
controller.image.image = [UIImage imageNamed:@"img_whatsnew_cycle_navigation_improved"];
controller.alertTitle.text = L(@"whatsnew_cycle_navigation_2_header");
controller.alertText.text = L(@"whatsnew_cycle_navigation_2_message");
[controller.nextPageButton setTitle:L(@"whats_new_next_button") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(nextPage)
forControlEvents:UIControlEventTouchUpInside];
} copy],
[^(MWMWhatsNewNavigationController * controller) {
controller.image.image = [UIImage imageNamed:@"img_whatsnew_booking_improved"];
controller.alertTitle.text = L(@"whatsnew_booking_2_header");
controller.alertText.text = L(@"whatsnew_booking_2_message");
[controller.nextPageButton setTitle:L(@"done") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(close)
forControlEvents:UIControlEventTouchUpInside];
} copy]
];
} // namespace
@implementation MWMWhatsNewNavigationController
+ (NSString *)udWelcomeWasShownKey { return @"WhatsNewWithNavigationWasShown"; }
+ (NSArray<TMWMWelcomeConfigBlock> *)pagesConfig { return pagesConfigBlocks; }
- (IBAction)close { [self.pageController close]; }
#pragma mark - Properties
- (void)setSize:(CGSize)size
{
super.size = size;
CGSize const newSize = super.size;
CGFloat const width = newSize.width;
CGFloat const height = newSize.height;
BOOL const hideImage = (self.imageHeight.multiplier * height <= self.imageMinHeight.constant);
self.titleImageOffset.priority =
hideImage ? UILayoutPriorityDefaultLow : UILayoutPriorityDefaultHigh;
self.image.hidden = hideImage;
self.containerWidth.constant = width;
self.containerHeight.constant = height;
}
@end

View file

@ -1,5 +0,0 @@
#import "MWMWelcomeController.h"
@interface MWMWhatsNewNightModeController : MWMWelcomeController
@end

View file

@ -1,65 +0,0 @@
#import "MWMPageController.h"
#import "MWMWhatsNewNightModeController.h"
@interface MWMWhatsNewNightModeController ()
@property (weak, nonatomic) IBOutlet UIView * containerView;
@property (weak, nonatomic) IBOutlet UIImageView * image;
@property (weak, nonatomic) IBOutlet UILabel * alertTitle;
@property (weak, nonatomic) IBOutlet UILabel * alertText;
@property (weak, nonatomic) IBOutlet UIButton * nextPageButton;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * containerWidth;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * containerHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * imageMinHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * imageHeight;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * titleTopOffset;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * titleImageOffset;
@end
namespace
{
NSArray<TMWMWelcomeConfigBlock> * pagesConfigBlocks = @[
[^(MWMWhatsNewNightModeController * controller)
{
controller.image.image = [UIImage imageNamed:@"img_nightmode"];
controller.alertTitle.text = L(@"whats_new_night_caption");
controller.alertText.text = L(@"whats_new_night_body");
[controller.nextPageButton setTitle:L(@"done") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(close)
forControlEvents:UIControlEventTouchUpInside];
} copy]
];
} // namespace
@implementation MWMWhatsNewNightModeController
+ (NSString *)udWelcomeWasShownKey
{
return @"WhatsNewWithNightModeWasShown";
}
+ (NSArray<TMWMWelcomeConfigBlock> *)pagesConfig
{
return pagesConfigBlocks;
}
#pragma mark - Properties
- (void)setSize:(CGSize)size
{
super.size = size;
CGSize const newSize = super.size;
CGFloat const width = newSize.width;
CGFloat const height = newSize.height;
BOOL const hideImage = (self.imageHeight.multiplier * height <= self.imageMinHeight.constant);
self.titleImageOffset.priority = hideImage ? UILayoutPriorityDefaultLow : UILayoutPriorityDefaultHigh;
self.image.hidden = hideImage;
self.containerWidth.constant = width;
self.containerHeight.constant = height;
}
@end

View file

@ -1,5 +0,0 @@
#import "MWMWelcomeController.h"
@interface MWMWhatsNewProfileBookingController : MWMWelcomeController
@end

View file

@ -1,68 +0,0 @@
#import "MWMWhatsNewProfileBookingController.h"
#import "MWMPageController.h"
@interface MWMWhatsNewProfileBookingController ()
@property(weak, nonatomic) IBOutlet UIView * containerView;
@property(weak, nonatomic) IBOutlet UIImageView * image;
@property(weak, nonatomic) IBOutlet UILabel * alertTitle;
@property(weak, nonatomic) IBOutlet UILabel * alertText;
@property(weak, nonatomic) IBOutlet UIButton * nextPageButton;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * containerWidth;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * containerHeight;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * imageMinHeight;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * imageHeight;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * titleTopOffset;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * titleImageOffset;
@end
namespace
{
NSArray<TMWMWelcomeConfigBlock> * pagesConfigBlocks = @[
[^(MWMWhatsNewProfileBookingController * controller) {
controller.image.image = [UIImage imageNamed:@"img_whatsnew_route_profile"];
controller.alertTitle.text = L(@"whats_new_route_profile_title");
controller.alertText.text = L(@"whats_new_route_profile_message");
[controller.nextPageButton setTitle:L(@"whats_new_next_button") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(nextPage)
forControlEvents:UIControlEventTouchUpInside];
} copy],
[^(MWMWhatsNewProfileBookingController * controller) {
controller.image.image = [UIImage imageNamed:@"img_whatsnew_booking_improved"];
controller.alertTitle.text = L(@"whats_new_booking_improve_title");
controller.alertText.text = L(@"whats_new_booking_improve_message");
[controller.nextPageButton setTitle:L(@"done") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(close)
forControlEvents:UIControlEventTouchUpInside];
} copy]
];
} // namespace
@implementation MWMWhatsNewProfileBookingController
+ (NSString *)udWelcomeWasShownKey { return @"WhatsNewProfileBookingWasShown"; }
+ (NSArray<TMWMWelcomeConfigBlock> *)pagesConfig { return pagesConfigBlocks; }
- (IBAction)close { [self.pageController close]; }
#pragma mark - Properties
- (void)setSize:(CGSize)size
{
super.size = size;
CGSize const newSize = super.size;
CGFloat const width = newSize.width;
CGFloat const height = newSize.height;
BOOL const hideImage = (self.imageHeight.multiplier * height <= self.imageMinHeight.constant);
self.titleImageOffset.priority =
hideImage ? UILayoutPriorityDefaultLow : UILayoutPriorityDefaultHigh;
self.image.hidden = hideImage;
self.containerWidth.constant = width;
self.containerHeight.constant = height;
}
@end

View file

@ -1,5 +0,0 @@
#import "MWMWelcomeController.h"
@interface MWMWhatsNewUberController : MWMWelcomeController
@end

View file

@ -1,58 +0,0 @@
#import "MWMWhatsNewUberController.h"
#import "MWMPageController.h"
@interface MWMWhatsNewUberController ()
@property(weak, nonatomic) IBOutlet UIView * containerView;
@property(weak, nonatomic) IBOutlet UIImageView * image;
@property(weak, nonatomic) IBOutlet UILabel * alertTitle;
@property(weak, nonatomic) IBOutlet UILabel * alertText;
@property(weak, nonatomic) IBOutlet UIButton * nextPageButton;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * containerWidth;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * containerHeight;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * imageMinHeight;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * imageHeight;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * titleTopOffset;
@property(weak, nonatomic) IBOutlet NSLayoutConstraint * titleImageOffset;
@end
namespace
{
NSArray<TMWMWelcomeConfigBlock> * pagesConfigBlocks = @[
[^(MWMWhatsNewUberController * controller) {
controller.image.image = [UIImage imageNamed:@"img_whatsnew_uber"];
controller.alertTitle.text = L(@"whatsnew_uber_header");
controller.alertText.text = L(@"whatsnew_uber_message");
[controller.nextPageButton setTitle:L(@"done") forState:UIControlStateNormal];
[controller.nextPageButton addTarget:controller.pageController
action:@selector(close)
forControlEvents:UIControlEventTouchUpInside];
} copy]];
} // namespace
@implementation MWMWhatsNewUberController
+ (NSString *)udWelcomeWasShownKey { return @"MWMWhatsNewUberController"; }
+ (NSArray<TMWMWelcomeConfigBlock> *)pagesConfig { return pagesConfigBlocks; }
- (IBAction)close { [self.pageController close]; }
#pragma mark - Properties
- (void)setSize:(CGSize)size
{
super.size = size;
CGSize const newSize = super.size;
CGFloat const width = newSize.width;
CGFloat const height = newSize.height;
BOOL const hideImage = (self.imageHeight.multiplier * height <= self.imageMinHeight.constant);
self.titleImageOffset.priority =
hideImage ? UILayoutPriorityDefaultLow : UILayoutPriorityDefaultHigh;
self.image.hidden = hideImage;
self.containerWidth.constant = width;
self.containerHeight.constant = height;
}
@end

View file

@ -1,7 +1,6 @@
#import "MWMPageController.h"
#import "MWMPageControllerDataSource.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
@interface MWMPageController ()

View file

@ -4,8 +4,6 @@
#import "MWMSettings.h"
#import "MapsAppDelegate.h"
#import "SwiftBridge.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
#include "Framework.h"
#include "geometry/distance_on_sphere.hpp"

View file

@ -9,8 +9,6 @@
#import "MWMRouter.h"
#import "MWMSearch.h"
#import "MapViewController.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
#import "UIImageView+Coloring.h"
#include "geometry/angles.hpp"

View file

@ -72,7 +72,7 @@ vector<pair<string, string>> availableLanguages()
{
_availableLanguages = availableLanguages();
NSString * saved = [MWMTextToSpeech savedLanguage];
NSString * saved = [[self class] savedLanguage];
NSString * preferedLanguageBcp47;
if (saved.length)
preferedLanguageBcp47 = saved;
@ -110,6 +110,11 @@ vector<pair<string, string>> availableLanguages()
return self;
}
- (void)dealloc
{
self.speechSynthesizer.delegate = nil;
}
+ (NSString *)ttsStatusNotificationKey { return @"TTFStatusWasChangedFromSettingsNotification"; }
- (vector<pair<string, string>>)availableLanguages { return _availableLanguages; }
- (void)setNotificationsLocale:(NSString *)locale
@ -126,10 +131,10 @@ vector<pair<string, string>> availableLanguages()
+ (BOOL)isTTSEnabled { return [[NSUserDefaults standardUserDefaults] boolForKey:kIsTTSEnabled]; }
+ (void)setTTSEnabled:(BOOL)enabled
{
if ([MWMTextToSpeech isTTSEnabled] == enabled)
if ([self isTTSEnabled] == enabled)
return;
if (!enabled)
[[MWMTextToSpeech tts] setActive:NO];
[[self tts] setActive:NO];
NSUserDefaults * ud = [NSUserDefaults standardUserDefaults];
[ud setBool:enabled forKey:kIsTTSEnabled];
[ud synchronize];
@ -137,12 +142,12 @@ vector<pair<string, string>> availableLanguages()
object:nil
userInfo:nil];
if (enabled)
[[MWMTextToSpeech tts] setActive:YES];
[[self tts] setActive:YES];
}
- (void)setActive:(BOOL)active
{
if (![MWMTextToSpeech isTTSEnabled] || self.active == active)
if (![[self class] isTTSEnabled] || self.active == active)
return;
if (active && ![self isValid])
[self createSynthesizer];
@ -150,7 +155,7 @@ vector<pair<string, string>> availableLanguages()
GetFramework().EnableTurnNotifications(active ? true : false);
runAsyncOnMainQueue(^{
[[NSNotificationCenter defaultCenter]
postNotificationName:[MWMTextToSpeech ttsStatusNotificationKey]
postNotificationName:[[self class] ttsStatusNotificationKey]
object:nil
userInfo:nil];
});
@ -158,7 +163,7 @@ vector<pair<string, string>> availableLanguages()
- (BOOL)active
{
return [MWMTextToSpeech isTTSEnabled] && GetFramework().AreTurnNotificationsEnabled() ? YES : NO;
return [[self class] isTTSEnabled] && GetFramework().AreTurnNotificationsEnabled() ? YES : NO;
}
+ (NSString *)savedLanguage
@ -171,7 +176,7 @@ vector<pair<string, string>> availableLanguages()
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
self.speechSynthesizer = [[AVSpeechSynthesizer alloc] init];
self.speechSynthesizer.delegate = self;
[self createVoice:[MWMTextToSpeech savedLanguage]];
[self createVoice:[[self class] savedLanguage]];
});
// TODO(vbykoianko) Use [NSLocale preferredLanguages] instead of [AVSpeechSynthesisVoice
// currentLanguageCode].

View file

@ -5,7 +5,7 @@
+ (void)segueFrom:(UIViewController *)source to:(UIViewController *)destination
{
[[[MWMSegue alloc] initWithIdentifier:@"" source:source destination:destination] perform];
[[[self alloc] initWithIdentifier:@"" source:source destination:destination] perform];
}
- (void)perform

View file

@ -1,5 +1,4 @@
#import "MWMTableViewCell.h"
#import "UIColor+MapsMeColor.h"
@implementation MWMTableViewCell

View file

@ -28,8 +28,6 @@
#import "MWMWhatsNewTrafficController.h"
#import "MapsAppDelegate.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
#import "UIViewController+Navigation.h"
#import "3party/Alohalytics/src/alohalytics_objc.h"

View file

@ -23,8 +23,6 @@
#import "MWMTextToSpeech.h"
#import "MapViewController.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
#import "3party/Alohalytics/src/alohalytics_objc.h"

View file

@ -10,7 +10,6 @@
#import "MapViewController.h"
#import "MapsAppDelegate.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#include "Framework.h"

View file

@ -202,13 +202,10 @@ NSDictionary * const kDeviceNamesWithMetalDriver = @{
{
if (!_buildDate)
{
NSString * dateStr =
[NSString stringWithFormat:@"%@ %@", [NSString stringWithUTF8String:__DATE__],
[NSString stringWithUTF8String:__TIME__]];
NSString * dateStr = [NSString stringWithFormat:@"%@ %@", @(__DATE__), @(__TIME__)];
NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"LLL d yyyy HH:mm:ss"];
[dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]];
[dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]];
_buildDate = [dateFormatter dateFromString:dateStr];
}
return _buildDate;

View file

@ -15,7 +15,7 @@ using TObservers = NSHashTable<__kindof TObserver>;
@implementation MWMKeyboard
+ (void)applicationDidBecomeActive { [MWMKeyboard manager]; }
+ (void)applicationDidBecomeActive { [self manager]; }
+ (MWMKeyboard *)manager
{
static MWMKeyboard * manager;
@ -47,17 +47,17 @@ using TObservers = NSHashTable<__kindof TObserver>;
}
- (void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self]; }
+ (CGFloat)keyboardHeight { return [MWMKeyboard manager].keyboardHeight; }
+ (CGFloat)keyboardHeight { return [self manager].keyboardHeight; }
#pragma mark - Add/Remove Observers
+ (void)addObserver:(id<MWMKeyboardObserver>)observer
{
[[MWMKeyboard manager].observers addObject:observer];
[[self manager].observers addObject:observer];
}
+ (void)removeObserver:(id<MWMKeyboardObserver>)observer
{
[[MWMKeyboard manager].observers removeObject:observer];
[[self manager].observers removeObject:observer];
}
#pragma mark - Notifications

View file

@ -128,7 +128,7 @@ void checkFlurryLogStatus(FlurryEventRecordStatus status)
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^
{
instance = [[Statistics alloc] init];
instance = [[self alloc] init];
});
return instance;
}

View file

@ -3,7 +3,7 @@
@interface WebViewController : MWMViewController <UIWebViewDelegate>
@property (nonatomic) NSURL * m_url;
@property (nonatomic) NSString * m_htmlText;
@property (copy, nonatomic) NSString * m_htmlText;
// Set to YES if external browser should be launched
@property (nonatomic) BOOL openInSafari;

View file

@ -192,12 +192,17 @@ void setPermissionRequested()
return self;
}
- (void)dealloc
{
self.locationManager.delegate = nil;
}
#pragma mark - Add/Remove Observers
+ (void)addObserver:(TObserver)observer
{
runAsyncOnMainQueue(^{
MWMLocationManager * manager = [MWMLocationManager manager];
MWMLocationManager * manager = [self manager];
[manager.observers addObject:observer];
[manager processLocationUpdate:manager.lastLocationInfo];
});
@ -206,7 +211,7 @@ void setPermissionRequested()
+ (void)removeObserver:(TObserver)observer
{
runAsyncOnMainQueue(^{
[[MWMLocationManager manager].observers removeObject:observer];
[[self manager].observers removeObject:observer];
});
}
@ -215,13 +220,13 @@ void setPermissionRequested()
+ (void)applicationDidBecomeActive
{
if (isPermissionRequested() || ![Alohalytics isFirstSession])
[MWMLocationManager manager].started = YES;
[self manager].started = YES;
}
+ (void)applicationWillResignActive
{
BOOL const keepRunning = isPermissionRequested() && keepRunningInBackground();
MWMLocationManager * manager = [MWMLocationManager manager];
MWMLocationManager * manager = [self manager];
CLLocationManager * locationManager = manager.locationManager;
if ([locationManager respondsToSelector:@selector(setAllowsBackgroundLocationUpdates:)])
[locationManager setAllowsBackgroundLocationUpdates:keepRunning];
@ -232,7 +237,7 @@ void setPermissionRequested()
+ (CLLocation *)lastLocation
{
MWMLocationManager * manager = [MWMLocationManager manager];
MWMLocationManager * manager = [self manager];
if (!manager.started || !manager.lastLocationInfo ||
manager.lastLocationInfo.horizontalAccuracy < 0 ||
manager.lastLocationStatus != location::TLocationError::ENoError)
@ -242,12 +247,12 @@ void setPermissionRequested()
+ (location::TLocationError)lastLocationStatus
{
return [MWMLocationManager manager].lastLocationStatus;
return [self manager].lastLocationStatus;
}
+ (CLHeading *)lastHeading
{
MWMLocationManager * manager = [MWMLocationManager manager];
MWMLocationManager * manager = [self manager];
if (!manager.started || !manager.lastHeadingInfo || manager.lastHeadingInfo.headingAccuracy < 0)
return nil;
return manager.lastHeadingInfo;
@ -332,7 +337,7 @@ void setPermissionRequested()
+ (void)setMyPositionMode:(location::EMyPositionMode)mode
{
MWMLocationManager * manager = [MWMLocationManager manager];
MWMLocationManager * manager = [self manager];
[manager.predictor setMyPositionMode:mode];
[manager processLocationStatus:manager.lastLocationStatus];
auto const & f = GetFramework();

View file

@ -1,5 +1,3 @@
#import "MWMTypes.h"
#include "platform/location.hpp"
using TPredictionBlock = void (^)(location::GpsInfo const &);

View file

@ -63,7 +63,7 @@ bool isMarkerPoint(MWMRoutePoint const & point) { return point.IsValid() && !poi
+ (BOOL)isTaxi { return GetFramework().GetRouter() == routing::RouterType::Taxi; }
+ (void)startRouting
{
auto router = [MWMRouter router];
auto router = [self router];
if (![self isTaxi])
{
[router start];
@ -88,7 +88,7 @@ bool isMarkerPoint(MWMRoutePoint const & point) { return point.IsValid() && !poi
+ (void)stopRouting
{
[[MWMRouter router] stop];
[[self router] stop];
[MWMNavigationDashboardManager manager].taxiDataSource = nil;
}
@ -191,7 +191,7 @@ bool isMarkerPoint(MWMRoutePoint const & point) { return point.IsValid() && !poi
auto const & startPoint = self.startPoint.Point();
auto const & finishPoint = self.finishPoint.Point();
// Taxi can't be used as best router.
if (bestRouter && ![MWMRouter isTaxi])
if (bestRouter && ![[self class] isTaxi])
self.type = GetFramework().GetBestRouter(startPoint, finishPoint);
f.BuildRoute(startPoint, finishPoint, isP2P, 0 /* timeoutSec */);
f.SetRouteStartPoint(startPoint, isMarkerPoint(self.startPoint));
@ -261,7 +261,7 @@ bool isMarkerPoint(MWMRoutePoint const & point) { return point.IsValid() && !poi
- (void)doStop
{
// Don't save taxi routing type as default.
if ([MWMRouter isTaxi])
if ([[self class] isTaxi])
GetFramework().SetRouter(routing::RouterType::Vehicle);
[self clearAltitudeImagesData];
@ -288,7 +288,7 @@ bool isMarkerPoint(MWMRoutePoint const & point) { return point.IsValid() && !poi
- (void)routeAltitudeImageForSize:(CGSize)size completion:(MWMImageHeightBlock)block
{
dispatch_async(self.renderAltitudeImagesQueue, ^{
if (![MWMRouter hasRouteAltitude])
if (![[self class] hasRouteAltitude])
return;
CGFloat const screenScale = [UIScreen mainScreen].scale;
CGSize const scaledSize = {.width = size.width * screenScale,
@ -380,7 +380,7 @@ bool isMarkerPoint(MWMRoutePoint const & point) { return point.IsValid() && !poi
else
[mapViewControlsManager onRouteReady];
[self updateFollowingInfo];
if (![MWMRouter isTaxi])
if (![[self class] isTaxi])
[[MWMNavigationDashboardManager manager] setRouteBuilderProgress:100];
mapViewControlsManager.searchHidden = YES;
@ -409,7 +409,7 @@ bool isMarkerPoint(MWMRoutePoint const & point) { return point.IsValid() && !poi
- (void)processRouteBuilderProgress:(CGFloat)progress
{
if (![MWMRouter isTaxi])
if (![[self class] isTaxi])
[[MWMNavigationDashboardManager manager] setRouteBuilderProgress:progress];
}
@ -433,14 +433,14 @@ bool isMarkerPoint(MWMRoutePoint const & point) { return point.IsValid() && !poi
code:code
cancelBlock:^{
if (code != routing::IRouter::NeedMoreMaps)
[[MWMRouter router] stop];
[[[self class] router] stop];
}
downloadBlock:^(storage::TCountriesVec const & downloadCountries, TMWMVoidBlock onSuccess) {
[MWMStorage downloadNodes:downloadCountries
onSuccess:onSuccess];
}
downloadCompleteBlock:^{
[[MWMRouter router] rebuildWithBestRouter:NO];
[[[self class] router] rebuildWithBestRouter:NO];
}];
}
else

View file

@ -25,7 +25,7 @@ static NSString * const kETAKey = @"eta";
{
_forceStateChange = MWMRouterForceStateChange::None;
NSDictionary * const stateDict =
[NSDictionary dictionaryWithContentsOfURL:[MWMRouterSavedState stateFileURL]];
[NSDictionary dictionaryWithContentsOfURL:[[self class] stateFileURL]];
if (stateDict)
{
m2::PointD point;
@ -58,12 +58,12 @@ static NSString * const kETAKey = @"eta";
NSGetSizeAndAlignment(@encode(m2::PointD), &size, nullptr);
stateDict[kEndPointKey] = [NSData dataWithBytes:&endPoint length:size];
stateDict[kETAKey] = [NSDate dateWithTimeIntervalSinceNow:routeInfo.m_time];
[stateDict writeToURL:[MWMRouterSavedState stateFileURL] atomically:YES];
[stateDict writeToURL:[self stateFileURL] atomically:YES];
}
+ (void)remove
{
[[NSFileManager defaultManager] removeItemAtURL:[MWMRouterSavedState stateFileURL] error:nil];
[[NSFileManager defaultManager] removeItemAtURL:[self stateFileURL] error:nil];
}
+ (NSURL *)stateFileURL
@ -77,7 +77,7 @@ static NSString * const kETAKey = @"eta";
if (GetFramework().IsRoutingActive())
return;
if ([MWMRouterSavedState state].forceStateChange == MWMRouterForceStateChange::None)
[MWMRouterSavedState remove];
[self remove];
}
@end

View file

@ -245,24 +245,10 @@
34A759B81DC795090078C3AE /* MWMPageControllerDataSource.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759B61DC795090078C3AE /* MWMPageControllerDataSource.mm */; };
34A759C91DC795140078C3AE /* MWMFirstLaunchController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759BA1DC795140078C3AE /* MWMFirstLaunchController.mm */; };
34A759CA1DC795140078C3AE /* MWMWelcomeController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759BC1DC795140078C3AE /* MWMWelcomeController.mm */; };
34A759CB1DC795140078C3AE /* MWMWhatsNewBookingBicycleRoutingController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759BE1DC795140078C3AE /* MWMWhatsNewBookingBicycleRoutingController.mm */; };
34A759CC1DC795140078C3AE /* MWMWhatsNewDownloaderEditorController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C01DC795140078C3AE /* MWMWhatsNewDownloaderEditorController.mm */; };
34A759CD1DC795140078C3AE /* MWMWhatsNewEditorController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C21DC795140078C3AE /* MWMWhatsNewEditorController.mm */; };
34A759CE1DC795140078C3AE /* MWMWhatsNewNavigationController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C41DC795140078C3AE /* MWMWhatsNewNavigationController.mm */; };
34A759CF1DC795140078C3AE /* MWMWhatsNewNightModeController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C61DC795140078C3AE /* MWMWhatsNewNightModeController.mm */; };
34A759D01DC795140078C3AE /* MWMWhatsNewProfileBookingController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C81DC795140078C3AE /* MWMWhatsNewProfileBookingController.mm */; };
34A759D21DC7953A0078C3AE /* Welcome.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 34A759D11DC7953A0078C3AE /* Welcome.storyboard */; };
34A759D81DC795D10078C3AE /* MWMWhatsNewUberController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759D71DC795D10078C3AE /* MWMWhatsNewUberController.mm */; };
34A759D91DC795D10078C3AE /* MWMWhatsNewUberController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759D71DC795D10078C3AE /* MWMWhatsNewUberController.mm */; };
34A759DA1DC797790078C3AE /* MWMFirstLaunchController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759BA1DC795140078C3AE /* MWMFirstLaunchController.mm */; };
34A759DB1DC797830078C3AE /* Welcome.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 34A759D11DC7953A0078C3AE /* Welcome.storyboard */; };
34A759DC1DC797880078C3AE /* MWMWelcomeController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759BC1DC795140078C3AE /* MWMWelcomeController.mm */; };
34A759DD1DC7978E0078C3AE /* MWMWhatsNewBookingBicycleRoutingController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759BE1DC795140078C3AE /* MWMWhatsNewBookingBicycleRoutingController.mm */; };
34A759DE1DC797920078C3AE /* MWMWhatsNewDownloaderEditorController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C01DC795140078C3AE /* MWMWhatsNewDownloaderEditorController.mm */; };
34A759DF1DC797960078C3AE /* MWMWhatsNewEditorController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C21DC795140078C3AE /* MWMWhatsNewEditorController.mm */; };
34A759E01DC797990078C3AE /* MWMWhatsNewNavigationController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C41DC795140078C3AE /* MWMWhatsNewNavigationController.mm */; };
34A759E11DC7979C0078C3AE /* MWMWhatsNewNightModeController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C61DC795140078C3AE /* MWMWhatsNewNightModeController.mm */; };
34A759E21DC797A00078C3AE /* MWMWhatsNewProfileBookingController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C81DC795140078C3AE /* MWMWhatsNewProfileBookingController.mm */; };
34A759E31DC797CB0078C3AE /* MWMPageController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759B41DC795090078C3AE /* MWMPageController.mm */; };
34A759E41DC797CE0078C3AE /* MWMPageControllerDataSource.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759B61DC795090078C3AE /* MWMPageControllerDataSource.mm */; };
34AB39C11D2BD8310021857D /* MWMStopButton.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34AB39C01D2BD8310021857D /* MWMStopButton.mm */; };
@ -581,7 +567,6 @@
849CF6841DE842290024A8A5 /* MWMShareActivityItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = 340837151B72451A00B5C185 /* MWMShareActivityItem.mm */; };
849CF6891DE842290024A8A5 /* MWMFacebookAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BC1E511ACBF98600EF0360 /* MWMFacebookAlert.mm */; };
849CF68A1DE842290024A8A5 /* MWMDefaultAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F64F198B1AB81A00006EAF7E /* MWMDefaultAlert.mm */; };
849CF68B1DE842290024A8A5 /* MWMWhatsNewDownloaderEditorController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C01DC795140078C3AE /* MWMWhatsNewDownloaderEditorController.mm */; };
849CF6911DE842290024A8A5 /* MWMSideButtons.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3490D2DA1CE9DD2500D0B838 /* MWMSideButtons.mm */; };
849CF6971DE842290024A8A5 /* MapsAppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* MapsAppDelegate.mm */; };
849CF6981DE842290024A8A5 /* MWMAPIBarView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 341522BE1B666A550077AA8F /* MWMAPIBarView.mm */; };
@ -601,7 +586,6 @@
849CF6C31DE842290024A8A5 /* MWMEditorViralAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F64D9C9E1C899C350063FA30 /* MWMEditorViralAlert.mm */; };
849CF6C61DE842290024A8A5 /* MWMInputPasswordValidator.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34ABA62B1C2D57D500FE1BEC /* MWMInputPasswordValidator.mm */; };
849CF6C71DE842290024A8A5 /* MWMAuthorizationOSMLoginViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34ABA6151C2D185B00FE1BEC /* MWMAuthorizationOSMLoginViewController.mm */; };
849CF6CB1DE842290024A8A5 /* MWMWhatsNewNightModeController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C61DC795140078C3AE /* MWMWhatsNewNightModeController.mm */; };
849CF6CC1DE842290024A8A5 /* MWMLocationAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BBF2C51B4FFB72000CF8E2 /* MWMLocationAlert.mm */; };
849CF6CE1DE842290024A8A5 /* MWMPlaceDoesntExistAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6FE3C371CC50FFD00A73196 /* MWMPlaceDoesntExistAlert.mm */; };
849CF6CF1DE842290024A8A5 /* MWMAlertViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F64F19821AB81A00006EAF7E /* MWMAlertViewController.mm */; };
@ -611,7 +595,6 @@
849CF6D81DE842290024A8A5 /* MWMSegue.mm in Sources */ = {isa = PBXBuildFile; fileRef = F607C18D1C047FDC00B53A87 /* MWMSegue.mm */; };
849CF6D91DE842290024A8A5 /* Framework.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 34479C751C60C6130065D261 /* Framework.cpp */; };
849CF6DC1DE842290024A8A5 /* MWMRoutePreview.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BD337E1B62403B00F2CE18 /* MWMRoutePreview.mm */; };
849CF6DD1DE842290024A8A5 /* MWMWhatsNewNavigationController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C41DC795140078C3AE /* MWMWhatsNewNavigationController.mm */; };
849CF6DE1DE842290024A8A5 /* MWMRoutePointLayout.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BB6CC21BB1860D00DF1DF2 /* MWMRoutePointLayout.mm */; };
849CF6DF1DE842290024A8A5 /* MWMAuthorizationCommon.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34BF0CC51C31304A00D097EB /* MWMAuthorizationCommon.mm */; };
849CF6E11DE842290024A8A5 /* MWMDownloaderDialogHeader.mm in Sources */ = {isa = PBXBuildFile; fileRef = F64F4B731B4A45FD0081A24A /* MWMDownloaderDialogHeader.mm */; };
@ -624,7 +607,6 @@
849CF6F61DE842290024A8A5 /* MWMNavigationDashboardEntity.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BD33861B62412E00F2CE18 /* MWMNavigationDashboardEntity.mm */; };
849CF6FB1DE842290024A8A5 /* BookmarksVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = FA36B80615403A4F004560CC /* BookmarksVC.mm */; };
849CF6FC1DE842290024A8A5 /* MWMSideButtonsView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3490D2DC1CE9DD2500D0B838 /* MWMSideButtonsView.mm */; };
849CF7051DE842290024A8A5 /* MWMWhatsNewUberController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759D71DC795D10078C3AE /* MWMWhatsNewUberController.mm */; };
849CF7071DE842290024A8A5 /* LocaleTranslator.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6381BF41CD12045004CA943 /* LocaleTranslator.mm */; };
849CF70A1DE842290024A8A5 /* MWMTaxiPreviewDataSource.mm in Sources */ = {isa = PBXBuildFile; fileRef = F68FCB841DA7BBA6007CC7D7 /* MWMTaxiPreviewDataSource.mm */; };
849CF70D1DE842290024A8A5 /* MWMAddPlaceNavigationBar.mm in Sources */ = {isa = PBXBuildFile; fileRef = F653CE151C71F60200A453F1 /* MWMAddPlaceNavigationBar.mm */; };
@ -652,7 +634,6 @@
849CF7461DE842290024A8A5 /* MWMTableViewCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = F626D52D1C3E6CAA00C17D15 /* MWMTableViewCell.mm */; };
849CF7471DE842290024A8A5 /* MWMDownloaderDialogCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = F64F4B6C1B46A51F0081A24A /* MWMDownloaderDialogCell.mm */; };
849CF74C1DE842290024A8A5 /* MWMLocationNotFoundAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = 346B42AA1DD5E3D20094EBEE /* MWMLocationNotFoundAlert.mm */; };
849CF74F1DE842290024A8A5 /* MWMWhatsNewProfileBookingController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C81DC795140078C3AE /* MWMWhatsNewProfileBookingController.mm */; };
849CF7561DE842290024A8A5 /* MWMRoutingDisclaimerAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F63774E91B59376F00BCF54D /* MWMRoutingDisclaimerAlert.mm */; };
849CF7581DE842290024A8A5 /* MWMDownloadTransitMapAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F64F19971AB81A00006EAF7E /* MWMDownloadTransitMapAlert.mm */; };
849CF75C1DE842290024A8A5 /* MWMNavigationView.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BD33831B6240F200F2CE18 /* MWMNavigationView.mm */; };
@ -661,13 +642,11 @@
849CF7621DE842290024A8A5 /* MWMBottomMenuView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 349C26B81BB04ED30005DF2F /* MWMBottomMenuView.mm */; };
849CF7631DE842290024A8A5 /* MWMAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F64F19861AB81A00006EAF7E /* MWMAlert.mm */; };
849CF7651DE842290024A8A5 /* ColorPickerView.mm in Sources */ = {isa = PBXBuildFile; fileRef = ED48BBB417C267F5003E7E92 /* ColorPickerView.mm */; };
849CF7661DE842290024A8A5 /* MWMWhatsNewBookingBicycleRoutingController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759BE1DC795140078C3AE /* MWMWhatsNewBookingBicycleRoutingController.mm */; };
849CF7671DE842290024A8A5 /* CircleView.mm in Sources */ = {isa = PBXBuildFile; fileRef = ED48BBB917C2B1E2003E7E92 /* CircleView.mm */; };
849CF7691DE842290024A8A5 /* MWMTaxiPreviewCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = F68FCB881DA7BD20007CC7D7 /* MWMTaxiPreviewCell.mm */; };
849CF76C1DE842290024A8A5 /* MWMWelcomeController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759BC1DC795140078C3AE /* MWMWelcomeController.mm */; };
849CF76D1DE842290024A8A5 /* AddSetTableViewCell.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34D15BA61BD8F93C00C8BCBE /* AddSetTableViewCell.mm */; };
849CF76E1DE842290024A8A5 /* MWMEditorViralActivityItem.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6A218481CA3F26800BE2CC6 /* MWMEditorViralActivityItem.mm */; };
849CF7711DE842290024A8A5 /* MWMWhatsNewEditorController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34A759C21DC795140078C3AE /* MWMWhatsNewEditorController.mm */; };
849CF7741DE842290024A8A5 /* SafariServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F659FC691CF35C24000A06B1 /* SafariServices.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
849CF7751DE842290024A8A5 /* libc++.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 845C89331C8983F300940D7F /* libc++.tbd */; };
849CF7761DE842290024A8A5 /* CoreSpotlight.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34BF68621D7459E6001752F6 /* CoreSpotlight.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
@ -1189,9 +1168,9 @@
F6E2FEC91E097BA00083EBEC /* MWMSearchFilterTransitioning.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEA1E097B9F0083EBEC /* MWMSearchFilterTransitioning.mm */; };
F6E2FECA1E097BA00083EBEC /* MWMSearchFilterTransitioning.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEA1E097B9F0083EBEC /* MWMSearchFilterTransitioning.mm */; };
F6E2FECB1E097BA00083EBEC /* MWMSearchFilterTransitioning.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEA1E097B9F0083EBEC /* MWMSearchFilterTransitioning.mm */; };
F6E2FECC1E097BA00083EBEC /* MWMSearchFilterTransitioningDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningDelegate.mm */; };
F6E2FECD1E097BA00083EBEC /* MWMSearchFilterTransitioningDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningDelegate.mm */; };
F6E2FECE1E097BA00083EBEC /* MWMSearchFilterTransitioningDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningDelegate.mm */; };
F6E2FECC1E097BA00083EBEC /* MWMSearchFilterTransitioningManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningManager.mm */; };
F6E2FECD1E097BA00083EBEC /* MWMSearchFilterTransitioningManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningManager.mm */; };
F6E2FECE1E097BA00083EBEC /* MWMSearchFilterTransitioningManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningManager.mm */; };
F6E2FECF1E097BA00083EBEC /* MWMSearchFilterViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEE1E097B9F0083EBEC /* MWMSearchFilterViewController.mm */; };
F6E2FED01E097BA00083EBEC /* MWMSearchFilterViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEE1E097B9F0083EBEC /* MWMSearchFilterViewController.mm */; };
F6E2FED11E097BA00083EBEC /* MWMSearchFilterViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6E2FCEE1E097B9F0083EBEC /* MWMSearchFilterViewController.mm */; };
@ -1598,21 +1577,7 @@
34A759BA1DC795140078C3AE /* MWMFirstLaunchController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMFirstLaunchController.mm; sourceTree = "<group>"; };
34A759BB1DC795140078C3AE /* MWMWelcomeController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWelcomeController.h; sourceTree = "<group>"; };
34A759BC1DC795140078C3AE /* MWMWelcomeController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWelcomeController.mm; sourceTree = "<group>"; };
34A759BD1DC795140078C3AE /* MWMWhatsNewBookingBicycleRoutingController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWhatsNewBookingBicycleRoutingController.h; sourceTree = "<group>"; };
34A759BE1DC795140078C3AE /* MWMWhatsNewBookingBicycleRoutingController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWhatsNewBookingBicycleRoutingController.mm; sourceTree = "<group>"; };
34A759BF1DC795140078C3AE /* MWMWhatsNewDownloaderEditorController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWhatsNewDownloaderEditorController.h; sourceTree = "<group>"; };
34A759C01DC795140078C3AE /* MWMWhatsNewDownloaderEditorController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWhatsNewDownloaderEditorController.mm; sourceTree = "<group>"; };
34A759C11DC795140078C3AE /* MWMWhatsNewEditorController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWhatsNewEditorController.h; sourceTree = "<group>"; };
34A759C21DC795140078C3AE /* MWMWhatsNewEditorController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWhatsNewEditorController.mm; sourceTree = "<group>"; };
34A759C31DC795140078C3AE /* MWMWhatsNewNavigationController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWhatsNewNavigationController.h; sourceTree = "<group>"; };
34A759C41DC795140078C3AE /* MWMWhatsNewNavigationController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWhatsNewNavigationController.mm; sourceTree = "<group>"; };
34A759C51DC795140078C3AE /* MWMWhatsNewNightModeController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWhatsNewNightModeController.h; sourceTree = "<group>"; };
34A759C61DC795140078C3AE /* MWMWhatsNewNightModeController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWhatsNewNightModeController.mm; sourceTree = "<group>"; };
34A759C71DC795140078C3AE /* MWMWhatsNewProfileBookingController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWhatsNewProfileBookingController.h; sourceTree = "<group>"; };
34A759C81DC795140078C3AE /* MWMWhatsNewProfileBookingController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWhatsNewProfileBookingController.mm; sourceTree = "<group>"; };
34A759D11DC7953A0078C3AE /* Welcome.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = Welcome.storyboard; sourceTree = "<group>"; };
34A759D61DC795D10078C3AE /* MWMWhatsNewUberController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWhatsNewUberController.h; sourceTree = "<group>"; };
34A759D71DC795D10078C3AE /* MWMWhatsNewUberController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWhatsNewUberController.mm; sourceTree = "<group>"; };
34AB39BF1D2BD8310021857D /* MWMStopButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMStopButton.h; sourceTree = "<group>"; };
34AB39C01D2BD8310021857D /* MWMStopButton.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMStopButton.mm; sourceTree = "<group>"; };
34ABA6141C2D185B00FE1BEC /* MWMAuthorizationOSMLoginViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMAuthorizationOSMLoginViewController.h; sourceTree = "<group>"; };
@ -1772,7 +1737,7 @@
845C89301C89837900940D7F /* AssetsLibrary.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AssetsLibrary.framework; path = System/Library/Frameworks/AssetsLibrary.framework; sourceTree = SDKROOT; };
845C89331C8983F300940D7F /* libc++.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libc++.tbd"; path = "usr/lib/libc++.tbd"; sourceTree = SDKROOT; };
845C89341C8983F300940D7F /* QuickLook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickLook.framework; path = System/Library/Frameworks/QuickLook.framework; sourceTree = SDKROOT; };
849CF7A31DE842290024A8A5 /* cmMAPS.ME.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = cmMAPS.ME.app; sourceTree = BUILT_PRODUCTS_DIR; };
849CF7A31DE842290024A8A5 /* cmMAPS.ME.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; name = cmMAPS.ME.app; path = "cm dbg.app"; sourceTree = BUILT_PRODUCTS_DIR; };
8D1107310486CEB800E47090 /* MAPSME.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = MAPSME.plist; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = "<group>"; };
972CDCC51887F1B7006641CA /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; };
974D041B1977DE430081D0A7 /* LocalNotificationManager.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; lineEnding = 0; path = LocalNotificationManager.mm; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
@ -2102,8 +2067,8 @@
F6E2FCE81E097B9F0083EBEC /* MWMSearchFilters.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = MWMSearchFilters.storyboard; sourceTree = "<group>"; };
F6E2FCE91E097B9F0083EBEC /* MWMSearchFilterTransitioning.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMSearchFilterTransitioning.h; sourceTree = "<group>"; };
F6E2FCEA1E097B9F0083EBEC /* MWMSearchFilterTransitioning.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMSearchFilterTransitioning.mm; sourceTree = "<group>"; };
F6E2FCEB1E097B9F0083EBEC /* MWMSearchFilterTransitioningDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMSearchFilterTransitioningDelegate.h; sourceTree = "<group>"; };
F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMSearchFilterTransitioningDelegate.mm; sourceTree = "<group>"; };
F6E2FCEB1E097B9F0083EBEC /* MWMSearchFilterTransitioningManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMSearchFilterTransitioningManager.h; sourceTree = "<group>"; };
F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningManager.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMSearchFilterTransitioningManager.mm; sourceTree = "<group>"; };
F6E2FCED1E097B9F0083EBEC /* MWMSearchFilterViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMSearchFilterViewController.h; sourceTree = "<group>"; };
F6E2FCEE1E097B9F0083EBEC /* MWMSearchFilterViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMSearchFilterViewController.mm; sourceTree = "<group>"; };
F6E2FCEF1E097B9F0083EBEC /* MWMSearchFilterViewController_Protected.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMSearchFilterViewController_Protected.h; sourceTree = "<group>"; };
@ -3260,20 +3225,6 @@
34A759BA1DC795140078C3AE /* MWMFirstLaunchController.mm */,
34A759BB1DC795140078C3AE /* MWMWelcomeController.h */,
34A759BC1DC795140078C3AE /* MWMWelcomeController.mm */,
34A759BD1DC795140078C3AE /* MWMWhatsNewBookingBicycleRoutingController.h */,
34A759BE1DC795140078C3AE /* MWMWhatsNewBookingBicycleRoutingController.mm */,
34A759BF1DC795140078C3AE /* MWMWhatsNewDownloaderEditorController.h */,
34A759C01DC795140078C3AE /* MWMWhatsNewDownloaderEditorController.mm */,
34A759C11DC795140078C3AE /* MWMWhatsNewEditorController.h */,
34A759C21DC795140078C3AE /* MWMWhatsNewEditorController.mm */,
34A759C31DC795140078C3AE /* MWMWhatsNewNavigationController.h */,
34A759C41DC795140078C3AE /* MWMWhatsNewNavigationController.mm */,
34A759C51DC795140078C3AE /* MWMWhatsNewNightModeController.h */,
34A759C61DC795140078C3AE /* MWMWhatsNewNightModeController.mm */,
34A759C71DC795140078C3AE /* MWMWhatsNewProfileBookingController.h */,
34A759C81DC795140078C3AE /* MWMWhatsNewProfileBookingController.mm */,
34A759D61DC795D10078C3AE /* MWMWhatsNewUberController.h */,
34A759D71DC795D10078C3AE /* MWMWhatsNewUberController.mm */,
341966841E000CDD00F96327 /* MWMWhatsNewTrafficController.h */,
341966851E000CDD00F96327 /* MWMWhatsNewTrafficController.mm */,
);
@ -3777,8 +3728,8 @@
F6E2FCE81E097B9F0083EBEC /* MWMSearchFilters.storyboard */,
F6E2FCE91E097B9F0083EBEC /* MWMSearchFilterTransitioning.h */,
F6E2FCEA1E097B9F0083EBEC /* MWMSearchFilterTransitioning.mm */,
F6E2FCEB1E097B9F0083EBEC /* MWMSearchFilterTransitioningDelegate.h */,
F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningDelegate.mm */,
F6E2FCEB1E097B9F0083EBEC /* MWMSearchFilterTransitioningManager.h */,
F6E2FCEC1E097B9F0083EBEC /* MWMSearchFilterTransitioningManager.mm */,
F6E2FCED1E097B9F0083EBEC /* MWMSearchFilterViewController.h */,
F6E2FCEE1E097B9F0083EBEC /* MWMSearchFilterViewController.mm */,
F6E2FCEF1E097B9F0083EBEC /* MWMSearchFilterViewController_Protected.h */,
@ -4750,7 +4701,6 @@
F6E2FF5C1E097BA00083EBEC /* MWMRecentTrackSettingsController.mm in Sources */,
F6E2FDE81E097BA00083EBEC /* MWMObjectsCategorySelectorController.mm in Sources */,
F64F199D1AB81A00006EAF7E /* MWMDefaultAlert.mm in Sources */,
34A759CC1DC795140078C3AE /* MWMWhatsNewDownloaderEditorController.mm in Sources */,
F6E2FEC01E097BA00083EBEC /* MWMConsole.mm in Sources */,
3490D2DE1CE9DD2500D0B838 /* MWMSideButtons.mm in Sources */,
F6E2FDF71E097BA00083EBEC /* MWMOpeningHoursAllDayTableViewCell.mm in Sources */,
@ -4807,7 +4757,6 @@
F6E2FEDE1E097BA00083EBEC /* MWMSearchManager+Layout.mm in Sources */,
3454D7D31E07F045004AF2AD /* UIImageView+Coloring.mm in Sources */,
3463BA661DE81DB90082417F /* MWMTrafficButtonViewController.mm in Sources */,
34A759CF1DC795140078C3AE /* MWMWhatsNewNightModeController.mm in Sources */,
F6BBF2C61B4FFB72000CF8E2 /* MWMLocationAlert.mm in Sources */,
F6E2FDA01E097BA00083EBEC /* MWMEditorAdditionalNamesTableViewController.mm in Sources */,
F6FE3C381CC50FFD00A73196 /* MWMPlaceDoesntExistAlert.mm in Sources */,
@ -4815,7 +4764,7 @@
F6E2FE541E097BA00083EBEC /* MWMPlacePageActionBar.mm in Sources */,
34C9BD091C6DBCDA000DC38D /* MWMNavigationController.mm in Sources */,
3406FA151C6E0C3300E9FAD2 /* MWMMapDownloadDialog.mm in Sources */,
F6E2FECC1E097BA00083EBEC /* MWMSearchFilterTransitioningDelegate.mm in Sources */,
F6E2FECC1E097BA00083EBEC /* MWMSearchFilterTransitioningManager.mm in Sources */,
F6E2FDD91E097BA00083EBEC /* MWMEditorTextTableViewCell.mm in Sources */,
F6E2FF111E097BA00083EBEC /* MWMSearchHistoryRequestCell.mm in Sources */,
34C9BD021C6DB693000DC38D /* MWMTableViewController.mm in Sources */,
@ -4835,7 +4784,6 @@
F6E2FE241E097BA00083EBEC /* MWMOpeningHoursModel.mm in Sources */,
F6BD33811B62403B00F2CE18 /* MWMRoutePreview.mm in Sources */,
F6E2FD8B1E097BA00083EBEC /* MWMNoMapsView.mm in Sources */,
34A759CE1DC795140078C3AE /* MWMWhatsNewNavigationController.mm in Sources */,
F6BB6CC31BB1860D00DF1DF2 /* MWMRoutePointLayout.mm in Sources */,
F6E2FD701E097BA00083EBEC /* MWMMapDownloaderTableViewCell.mm in Sources */,
F6E2FE4E1E097BA00083EBEC /* MWMActionBarButton.mm in Sources */,
@ -4875,7 +4823,6 @@
F6E2FE391E097BA00083EBEC /* MWMMigrationView.mm in Sources */,
F6E2FF3B1E097BA00083EBEC /* MWMSearchTableView.mm in Sources */,
F6E2FF651E097BA00083EBEC /* MWMTTSSettingsViewController.mm in Sources */,
34A759D81DC795D10078C3AE /* MWMWhatsNewUberController.mm in Sources */,
F6381BF51CD12045004CA943 /* LocaleTranslator.mm in Sources */,
340475551E081A4600C92850 /* Statistics.mm in Sources */,
F68FCB851DA7BBA6007CC7D7 /* MWMTaxiPreviewDataSource.mm in Sources */,
@ -4950,7 +4897,6 @@
340475761E081A4600C92850 /* MWMTrafficManager.mm in Sources */,
3400AB381E02E8CE004036E2 /* MWMTableViewCell+CellId.swift in Sources */,
346B42AB1DD5E3D20094EBEE /* MWMLocationNotFoundAlert.mm in Sources */,
34A759D01DC795140078C3AE /* MWMWhatsNewProfileBookingController.mm in Sources */,
F6E2FF021E097BA00083EBEC /* MWMSearchHistoryClearCell.mm in Sources */,
F63774EA1B59376F00BCF54D /* MWMRoutingDisclaimerAlert.mm in Sources */,
340475081E08199E00C92850 /* MWMMyTarget.mm in Sources */,
@ -4971,7 +4917,6 @@
F64F199B1AB81A00006EAF7E /* MWMAlert.mm in Sources */,
ED48BBB517C267F5003E7E92 /* ColorPickerView.mm in Sources */,
F6E2FF561E097BA00083EBEC /* MWMMobileInternetViewController.mm in Sources */,
34A759CB1DC795140078C3AE /* MWMWhatsNewBookingBicycleRoutingController.mm in Sources */,
ED48BBBA17C2B1E2003E7E92 /* CircleView.mm in Sources */,
F6E2FEEA1E097BA00083EBEC /* MWMSearchTextField.mm in Sources */,
F68FCB8A1DA7BD20007CC7D7 /* MWMTaxiPreviewCell.mm in Sources */,
@ -4984,7 +4929,6 @@
F6E2FED51E097BA00083EBEC /* MWMSearchChangeModeView.mm in Sources */,
F6A218491CA3F26800BE2CC6 /* MWMEditorViralActivityItem.mm in Sources */,
34845DB21E165E24003D55B9 /* SearchNoResultsViewController.swift in Sources */,
34A759CD1DC795140078C3AE /* MWMWhatsNewEditorController.mm in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -5039,7 +4983,6 @@
6741A9C01BF340DE002C974C /* MWMTextView.mm in Sources */,
F6E2FDB61E097BA00083EBEC /* MWMEditorAdditionalNamesHeader.mm in Sources */,
F6E2FDC81E097BA00083EBEC /* MWMEditorNotesFooter.mm in Sources */,
34A759E01DC797990078C3AE /* MWMWhatsNewNavigationController.mm in Sources */,
F6E2FD651E097BA00083EBEC /* MWMMapDownloaderPlaceTableViewCell.mm in Sources */,
340475681E081A4600C92850 /* MWMRouterSavedState.mm in Sources */,
F6E2FF2D1E097BA00083EBEC /* MWMSearchCell.mm in Sources */,
@ -5052,7 +4995,6 @@
F653CE191C71F62700A453F1 /* MWMAddPlaceNavigationBar.mm in Sources */,
340475621E081A4600C92850 /* MWMNetworkPolicy.mm in Sources */,
F6E2FEE51E097BA00083EBEC /* MWMSearchNoResults.mm in Sources */,
34A759D91DC795D10078C3AE /* MWMWhatsNewUberController.mm in Sources */,
F6E2FF631E097BA00083EBEC /* MWMTTSLanguageViewController.mm in Sources */,
342EE4121C43DAA7009F6A49 /* MWMAuthorizationWebViewLoginViewController.mm in Sources */,
34479C7D1C60C6130065D261 /* MWMFrameworkListener.mm in Sources */,
@ -5060,7 +5002,6 @@
34845DAF1E1649F6003D55B9 /* DownloaderNoResultsEmbedViewController.swift in Sources */,
F6791B141C43DF0B007A8A6E /* MWMStartButton.mm in Sources */,
F6E2FEDF1E097BA00083EBEC /* MWMSearchManager+Layout.mm in Sources */,
34A759DF1DC797960078C3AE /* MWMWhatsNewEditorController.mm in Sources */,
F64D9CA01C899C350063FA30 /* MWMEditorViralAlert.mm in Sources */,
6741A9CF1BF340DE002C974C /* MWMLocationAlert.mm in Sources */,
34ABA62D1C2D57D500FE1BEC /* MWMInputPasswordValidator.mm in Sources */,
@ -5070,7 +5011,7 @@
F6E2FE551E097BA00083EBEC /* MWMPlacePageActionBar.mm in Sources */,
34ABA6171C2D185C00FE1BEC /* MWMAuthorizationOSMLoginViewController.mm in Sources */,
6741A9D41BF340DE002C974C /* MWMAlertViewController.mm in Sources */,
F6E2FECD1E097BA00083EBEC /* MWMSearchFilterTransitioningDelegate.mm in Sources */,
F6E2FECD1E097BA00083EBEC /* MWMSearchFilterTransitioningManager.mm in Sources */,
F6E2FDDA1E097BA00083EBEC /* MWMEditorTextTableViewCell.mm in Sources */,
F6E2FF121E097BA00083EBEC /* MWMSearchHistoryRequestCell.mm in Sources */,
F6FE3C391CC50FFD00A73196 /* MWMPlaceDoesntExistAlert.mm in Sources */,
@ -5169,8 +5110,6 @@
F6E2FDBC1E097BA00083EBEC /* MWMEditorAdditionalNameTableViewCell.mm in Sources */,
F6E2FF4B1E097BA00083EBEC /* SettingsTableViewSwitchCell.swift in Sources */,
F6E2FE791E097BA00083EBEC /* MWMOpeningHoursLayoutHelper.mm in Sources */,
34A759DD1DC7978E0078C3AE /* MWMWhatsNewBookingBicycleRoutingController.mm in Sources */,
34A759DE1DC797920078C3AE /* MWMWhatsNewDownloaderEditorController.mm in Sources */,
F6B97B271CD0CA990009B612 /* MWMBookmarkNameCell.mm in Sources */,
34ABA6211C2D517500FE1BEC /* MWMInputValidator.mm in Sources */,
F6E2FD7D1E097BA00083EBEC /* MWMMapDownloaderExtendedDataSource.mm in Sources */,
@ -5199,7 +5138,6 @@
F6E2FEFD1E097BA00083EBEC /* MWMSearchCategoryCell.mm in Sources */,
3454D7BF1E07F045004AF2AD /* DateComponentsFormatter+ETA.swift in Sources */,
6741AA1C1BF340DE002C974C /* MWMRoutingDisclaimerAlert.mm in Sources */,
34A759E21DC797A00078C3AE /* MWMWhatsNewProfileBookingController.mm in Sources */,
F6E2FE971E097BA00083EBEC /* ContextViews.mm in Sources */,
6741AA1D1BF340DE002C974C /* MWMDownloadTransitMapAlert.mm in Sources */,
3400AB391E02E8CE004036E2 /* MWMTableViewCell+CellId.swift in Sources */,
@ -5212,7 +5150,6 @@
3404754D1E081A4600C92850 /* MWMKeyboard.mm in Sources */,
34EF94291C05A6F30050B714 /* MWMSegue.mm in Sources */,
F6E2FDA71E097BA00083EBEC /* MWMButtonCell.mm in Sources */,
34A759E11DC7979C0078C3AE /* MWMWhatsNewNightModeController.mm in Sources */,
F6E2FEF11E097BA00083EBEC /* MWMSearchBookmarksCell.mm in Sources */,
F6E2FE731E097BA00083EBEC /* MWMOpeningHours.mm in Sources */,
6741AA251BF340DE002C974C /* MWMBottomMenuView.mm in Sources */,
@ -5264,7 +5201,6 @@
F6E2FEC21E097BA00083EBEC /* MWMConsole.mm in Sources */,
845E4B1C1DEC839800D6BED8 /* MWMTrafficButtonViewController.mm in Sources */,
F6E2FDF91E097BA00083EBEC /* MWMOpeningHoursAllDayTableViewCell.mm in Sources */,
849CF68B1DE842290024A8A5 /* MWMWhatsNewDownloaderEditorController.mm in Sources */,
F6E2FE1A1E097BA00083EBEC /* MWMOpeningHoursTimeSpanTableViewCell.mm in Sources */,
F6E2FDED1E097BA00083EBEC /* MWMOpeningHoursAddClosedTableViewCell.mm in Sources */,
F6E2FE111E097BA00083EBEC /* MWMOpeningHoursTableViewCell.mm in Sources */,
@ -5317,7 +5253,6 @@
F6E2FEE01E097BA00083EBEC /* MWMSearchManager+Layout.mm in Sources */,
849CF6C61DE842290024A8A5 /* MWMInputPasswordValidator.mm in Sources */,
849CF6C71DE842290024A8A5 /* MWMAuthorizationOSMLoginViewController.mm in Sources */,
849CF6CB1DE842290024A8A5 /* MWMWhatsNewNightModeController.mm in Sources */,
849CF6CC1DE842290024A8A5 /* MWMLocationAlert.mm in Sources */,
F6E2FDA21E097BA00083EBEC /* MWMEditorAdditionalNamesTableViewController.mm in Sources */,
849CF6CE1DE842290024A8A5 /* MWMPlaceDoesntExistAlert.mm in Sources */,
@ -5325,7 +5260,7 @@
F6E2FE561E097BA00083EBEC /* MWMPlacePageActionBar.mm in Sources */,
849CF6CF1DE842290024A8A5 /* MWMAlertViewController.mm in Sources */,
340475781E081A4600C92850 /* MWMTrafficManager.mm in Sources */,
F6E2FECE1E097BA00083EBEC /* MWMSearchFilterTransitioningDelegate.mm in Sources */,
F6E2FECE1E097BA00083EBEC /* MWMSearchFilterTransitioningManager.mm in Sources */,
F6E2FDDB1E097BA00083EBEC /* MWMEditorTextTableViewCell.mm in Sources */,
F6E2FF131E097BA00083EBEC /* MWMSearchHistoryRequestCell.mm in Sources */,
849CF6D21DE842290024A8A5 /* MWMNavigationController.mm in Sources */,
@ -5350,7 +5285,6 @@
F6E2FD721E097BA00083EBEC /* MWMMapDownloaderTableViewCell.mm in Sources */,
F6E2FE501E097BA00083EBEC /* MWMActionBarButton.mm in Sources */,
849CF6DC1DE842290024A8A5 /* MWMRoutePreview.mm in Sources */,
849CF6DD1DE842290024A8A5 /* MWMWhatsNewNavigationController.mm in Sources */,
F6E2FD781E097BA00083EBEC /* MWMMapDownloaderDataSource.mm in Sources */,
849CF6DE1DE842290024A8A5 /* MWMRoutePointLayout.mm in Sources */,
849CF6DF1DE842290024A8A5 /* MWMAuthorizationCommon.mm in Sources */,
@ -5389,7 +5323,6 @@
849CF6FB1DE842290024A8A5 /* BookmarksVC.mm in Sources */,
849CF6FC1DE842290024A8A5 /* MWMSideButtonsView.mm in Sources */,
3454D7C01E07F045004AF2AD /* DateComponentsFormatter+ETA.swift in Sources */,
849CF7051DE842290024A8A5 /* MWMWhatsNewUberController.mm in Sources */,
F6E2FE9B1E097BA00083EBEC /* MWMiPadPlacePageLayoutImpl.mm in Sources */,
849CF7071DE842290024A8A5 /* LocaleTranslator.mm in Sources */,
340475821E081B3300C92850 /* iosOGLContextFactory.mm in Sources */,
@ -5463,7 +5396,6 @@
849CF74C1DE842290024A8A5 /* MWMLocationNotFoundAlert.mm in Sources */,
F6E2FF041E097BA00083EBEC /* MWMSearchHistoryClearCell.mm in Sources */,
340475541E081A4600C92850 /* MWMCustomFacebookEvents.mm in Sources */,
849CF74F1DE842290024A8A5 /* MWMWhatsNewProfileBookingController.mm in Sources */,
3404750A1E08199E00C92850 /* MWMMyTarget.mm in Sources */,
849CF7561DE842290024A8A5 /* MWMRoutingDisclaimerAlert.mm in Sources */,
F6E2FDA81E097BA00083EBEC /* MWMButtonCell.mm in Sources */,
@ -5482,7 +5414,6 @@
849CF7631DE842290024A8A5 /* MWMAlert.mm in Sources */,
F6E2FF581E097BA00083EBEC /* MWMMobileInternetViewController.mm in Sources */,
849CF7651DE842290024A8A5 /* ColorPickerView.mm in Sources */,
849CF7661DE842290024A8A5 /* MWMWhatsNewBookingBicycleRoutingController.mm in Sources */,
F6E2FEEC1E097BA00083EBEC /* MWMSearchTextField.mm in Sources */,
3454D7DE1E07F045004AF2AD /* UISwitch+RuntimeAttributes.m in Sources */,
849CF7671DE842290024A8A5 /* CircleView.mm in Sources */,
@ -5494,7 +5425,6 @@
F6E2FED71E097BA00083EBEC /* MWMSearchChangeModeView.mm in Sources */,
849CF76E1DE842290024A8A5 /* MWMEditorViralActivityItem.mm in Sources */,
34845DB41E165E24003D55B9 /* SearchNoResultsViewController.swift in Sources */,
849CF7711DE842290024A8A5 /* MWMWhatsNewEditorController.mm in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};

View file

@ -10,5 +10,7 @@
#import "MWMMacros.h"
#import "MWMTypes.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
#import "UIKitCategories.h"
#endif

View file

@ -1,6 +1,4 @@
#import "MWMMapDownloaderCellHeader.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
@implementation MWMMapDownloaderCellHeader

View file

@ -1,6 +1,5 @@
#import "MWMMapDownloaderPlaceTableViewCell.h"
#import "MWMCommon.h"
#import "UIFont+MapsMeFonts.h"
#include "Framework.h"

View file

@ -1,6 +1,5 @@
#import "MWMMapDownloaderSubplaceTableViewCell.h"
#import "MWMCommon.h"
#import "UIFont+MapsMeFonts.h"
@interface MWMMapDownloaderTableViewCell ()

View file

@ -3,7 +3,6 @@
#import "MWMCircularProgress.h"
#import "MWMMapDownloaderLargeCountryTableViewCell.h"
#import "NSString+Categories.h"
#import "UIFont+MapsMeFonts.h"
#include "Framework.h"

View file

@ -91,7 +91,7 @@ using namespace mwm;
[indexSet addObject:index];
NSMutableArray<NSString *> * letterIds = availableCountries[index];
letterIds = letterIds ? letterIds : [@[] mutableCopy];
letterIds = letterIds ?: [@[] mutableCopy];
[letterIds addObject:nsCountryId];
availableCountries[index] = letterIds;
}

View file

@ -1,8 +1,6 @@
#import "MWMMapDownloaderExtendedDataSourceWithAds.h"
#import "MWMMapDownloaderAdsTableViewCell.h"
#import "MWMMyTarget.h"
#import "UIColor+MapsMeColor.h"
#import "UIFont+MapsMeFonts.h"
#include "Framework.h"

View file

@ -18,7 +18,6 @@
#import "MWMToast.h"
#import "MapsAppDelegate.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "UIViewController+Navigation.h"
#include "Framework.h"

View file

@ -4,8 +4,6 @@
#import "MWMMapDownloaderSearchDataSource.h"
#import "MWMNoMapsViewController.h"
#import "SwiftBridge.h"
#import "UIColor+MapsMeColor.h"
#import "UIKitCategories.h"
#include "Framework.h"

View file

@ -1,5 +1,3 @@
#import "UIKitCategories.h"
@interface MWMNoMapsView : SolidTouchView
@end

View file

@ -1,6 +1,5 @@
#import "MWMBookmarkColorViewController.h"
#import "Statistics.h"
#import "UIColor+MapsMeColor.h"
#import "UIViewController+Navigation.h"
#include "std/array.hpp"

View file

@ -53,7 +53,7 @@ enum RowInMetaInfo
auto data = self.data;
NSAssert(data, @"Data can't be nil!");
self.cachedDescription = data.bookmarkDescription;
self.cachedTitle = data.externalTitle ? data.externalTitle : data.title;
self.cachedTitle = data.externalTitle ?: data.title;
self.cachedCategory = data.bookmarkCategory;
self.cachedColor = data.bookmarkColor;
m_cachedBac = data.bac;

View file

@ -5,7 +5,7 @@
@protocol MWMCuisineEditorProtocol <NSObject>
- (vector<string>)getSelectedCuisines;
- (vector<string>)selectedCuisines;
- (void)setSelectedCuisines:(vector<string> const &)cuisines;
@end

View file

@ -3,7 +3,6 @@
#import "MWMKeyboard.h"
#import "MWMTableViewCell.h"
#import "MWMToast.h"
#import "UIColor+MapsMeColor.h"
#include "indexer/cuisines.hpp"
#include "indexer/search_string_utils.hpp"
@ -153,7 +152,7 @@ vector<string> SliceKeys(vector<pair<string, string>> const & v)
using namespace osm;
m_allCuisines = Cuisines::Instance().AllSupportedCuisines();
m_displayedKeys = SliceKeys(m_allCuisines);
m_selectedCuisines = [self.delegate getSelectedCuisines];
m_selectedCuisines = [self.delegate selectedCuisines];
for (auto const & s : m_selectedCuisines)
{
string const translated = Cuisines::Instance().Translate(s);

View file

@ -1,5 +1,3 @@
#import "MWMTypes.h"
@interface MWMEditorAdditionalNamesHeader : UIView
+ (instancetype)header:(TMWMVoidBlock)toggleBlock;

View file

@ -14,7 +14,7 @@
+ (instancetype)header:(TMWMVoidBlock)toggleBlock
{
MWMEditorAdditionalNamesHeader * h = [[[NSBundle mainBundle] loadNibNamed:[MWMEditorAdditionalNamesHeader className] owner:nil options:nil]
MWMEditorAdditionalNamesHeader * h = [[[NSBundle mainBundle] loadNibNamed:[self className] owner:nil options:nil]
firstObject];
h.label.localizedText = L(@"place_name").uppercaseString;
h.toggleBlock = toggleBlock;

View file

@ -1,6 +1,5 @@
#import "MWMEditorCategoryCell.h"
#import "MWMEditorCommon.h"
#import "UIColor+MapsMeColor.h"
#import "UIImageView+Coloring.h"
namespace

View file

@ -10,7 +10,7 @@
+ (instancetype)footerForController:(UIViewController *)controller
{
MWMEditorNotesFooter * f = [[[NSBundle mainBundle] loadNibNamed:[MWMEditorNotesFooter className] owner:nil options:nil]
MWMEditorNotesFooter * f = [[[NSBundle mainBundle] loadNibNamed:[self className] owner:nil options:nil]
firstObject];
f.controller = controller;
[f setNeedsLayout];

View file

@ -1,6 +1,5 @@
#import "MWMEditorSelectTableViewCell.h"
#import "MWMCommon.h"
#import "UIColor+MapsMeColor.h"
#import "UIImageView+Coloring.h"
@interface MWMEditorSelectTableViewCell ()

View file

@ -1,5 +1,4 @@
#import "MWMEditorSwitchTableViewCell.h"
#import "UIColor+MapsMeColor.h"
#import "UIImageView+Coloring.h"
@interface MWMEditorSwitchTableViewCell ()

Some files were not shown because too many files have changed in this diff Show more