Merge pull request #4245 from igrechuhin/MAPSME-1774

[ios] Added search categories to Spotlight.
This commit is contained in:
ygorshenin 2016-09-09 14:23:54 +03:00 committed by GitHub
commit 4961b9e4a9
81 changed files with 565 additions and 15 deletions

View file

@ -29,9 +29,6 @@ inline void CoverRect(double minX, double minY,
size_t cells_count, int maxDepth,
vector<CellIdT> & cells)
{
ASSERT_LESS(minX, maxX, ());
ASSERT_LESS(minY, maxY, ());
if (minX < BoundsT::minX) minX = BoundsT::minX;
if (minY < BoundsT::minY) minY = BoundsT::minY;
if (maxX > BoundsT::maxX) maxX = BoundsT::maxX;

View file

@ -66,5 +66,6 @@
- (void)searchViewDidEnterState:(MWMSearchManagerState)state;
- (void)actionDownloadMaps:(mwm::DownloaderMode)mode;
- (void)searchFrameUpdated:(CGRect)frame;
- (void)searchText:(NSString *)text forInputLocale:(NSString *)locale;
@end

View file

@ -200,6 +200,14 @@ extern NSString * const kAlohalyticsTapEventKey;
self.topBound = s.height;
}
- (void)searchText:(NSString *)text forInputLocale:(NSString *)locale
{
if (text.length == 0)
return;
self.searchManager.state = MWMSearchManagerStateTableSearch;
[self.searchManager searchText:text forInputLocale:locale];
}
#pragma mark - MWMBottomMenuControllerProtocol
- (void)actionDownloadMaps:(mwm::DownloaderMode)mode

View file

@ -262,6 +262,7 @@ extern NSString * const kSearchStateKey = @"SearchStateKey";
- (void)changeToTableSearchState
{
[self changeToDefaultState];
self.rootView.compact = NO;
self.rootView.tabBarIsVisible = NO;
[MWMSearch setSearchOnMap:NO];
@ -271,6 +272,7 @@ extern NSString * const kSearchStateKey = @"SearchStateKey";
- (void)changeToMapSearchState
{
[self changeToDefaultState];
GetFramework().DeactivateMapSelection(true);
[self.searchTextField resignFirstResponder];
self.rootView.compact = YES;

View file

@ -1,6 +1,7 @@
#import "Macros.h"
#import "MWMSearchCategoriesManager.h"
#import "AppInfo.h"
#import "MWMSearchCategoryCell.h"
#import "Macros.h"
#import "Statistics.h"
#include "search/displayed_categories.hpp"
@ -31,7 +32,7 @@ static NSString * const kCellIdentifier = @"MWMSearchCategoryCell";
tableView.delegate = self;
tableView.dataSource = self;
[tableView registerNib:[UINib nibWithNibName:kCellIdentifier bundle:nil]
forCellReuseIdentifier:kCellIdentifier];
forCellReuseIdentifier:kCellIdentifier];
[tableView reloadData];
}
@ -42,7 +43,8 @@ static NSString * const kCellIdentifier = @"MWMSearchCategoryCell";
return m_categories.size();
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
return [tableView dequeueReusableCellWithIdentifier:kCellIdentifier];
}
@ -54,8 +56,9 @@ static NSString * const kCellIdentifier = @"MWMSearchCategoryCell";
return 44.0;
}
- (void)tableView:(UITableView *)tableView willDisplayCell:(MWMSearchCategoryCell *)cell
forRowAtIndexPath:(NSIndexPath *)indexPath
- (void)tableView:(UITableView *)tableView
willDisplayCell:(MWMSearchCategoryCell *)cell
forRowAtIndexPath:(NSIndexPath *)indexPath
{
[cell setCategory:@(m_categories[indexPath.row].c_str())];
}
@ -64,8 +67,9 @@ forRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString * string = @(m_categories[indexPath.row].c_str());
[Statistics logEvent:kStatEventName(kStatSearch, kStatSelectResult)
withParameters:@{kStatValue : string, kStatScreen : kStatCategories}];
[self.delegate searchText:[L(string) stringByAppendingString:@" "] forInputLocale:nil];
withParameters:@{kStatValue : string, kStatScreen : kStatCategories}];
[self.delegate searchText:[L(string) stringByAppendingString:@" "]
forInputLocale:[[AppInfo sharedInfo] languageId]];
}
@end

View file

@ -100,8 +100,6 @@ double getExactDPI(double contentScaleFactor)
[self.widgetsManager setupWidgets:p];
GetFramework().CreateDrapeEngine(make_ref(m_factory), move(p));
_drapeEngineCreated = YES;
LOG(LINFO, ("EAGLView createDrapeEngine Ended"));
}
@ -124,6 +122,7 @@ double getExactDPI(double contentScaleFactor)
{
GetFramework().OnSize(width, height);
[self.widgetsManager resize:CGSizeMake(width, height)];
self->_drapeEngineCreated = YES;
});
}
@ -133,10 +132,7 @@ double getExactDPI(double contentScaleFactor)
int h = height * self.contentScaleFactor;
if (GetFramework().GetDrapeEngine() == nullptr)
{
[self createDrapeEngineWithWidth:w height:h];
return;
}
[self applyOnSize:w withHeight:h];
}

View file

@ -1,4 +1,5 @@
#import "MapsAppDelegate.h"
#import <CoreSpotlight/CoreSpotlight.h>
#import <CoreTelephony/CTTelephonyNetworkInfo.h>
#import <FBSDKCoreKit/FBSDKCoreKit.h>
#import <Pushwoosh/PushNotificationManager.h>
@ -12,8 +13,10 @@
#import "MWMFrameworkListener.h"
#import "MWMFrameworkObservers.h"
#import "MWMLocationManager.h"
#import "MWMMapViewControlsManager.h"
#import "MWMRouter.h"
#import "MWMRouterSavedState.h"
#import "MWMSearch+CoreSpotlight.h"
#import "MWMSettings.h"
#import "MWMStorage.h"
#import "MWMTextToSpeech.h"
@ -658,6 +661,34 @@ using namespace osm_auth_ios;
GetFramework().SetRenderingEnabled();
[MWMLocationManager applicationDidBecomeActive];
[MWMRouterSavedState restore];
[MWMSearch addCategoriesToSpotlight];
}
- (BOOL)application:(UIApplication *)application
continueUserActivity:(NSUserActivity *)userActivity
restorationHandler:(void (^)(NSArray * restorableObjects))restorationHandler
{
if (![userActivity.activityType isEqualToString:CSSearchableItemActionType])
return NO;
NSString * searchString = userActivity.title;
if (!searchString)
return NO;
if (!self.isDrapeEngineCreated)
{
dispatch_async(dispatch_get_main_queue(), ^{
[self application:application
continueUserActivity:userActivity
restorationHandler:restorationHandler];
});
}
else
{
[[MWMMapViewControlsManager manager] searchText:[searchString stringByAppendingString:@" "]
forInputLocale:[MWMSettings spotlightLocaleLanguageId]];
}
return YES;
}
- (void)dealloc

View file

@ -0,0 +1,7 @@
#import "MWMSearch.h"
@interface MWMSearch (CoreSpotlight)
+ (void)addCategoriesToSpotlight;
@end

View file

@ -0,0 +1,77 @@
#import <CoreSpotlight/CoreSpotlight.h>
#import <Crashlytics/Crashlytics.h>
#import <MobileCoreServices/MobileCoreServices.h>
#import "AppInfo.h"
#import "Common.h"
#import "MWMSearch+CoreSpotlight.h"
#import "MWMSettings.h"
#include "Framework.h"
#include "search/displayed_categories.hpp"
@implementation MWMSearch (CoreSpotlight)
+ (void)addCategoriesToSpotlight
{
if (isIOSVersionLessThan(9) || ![CSSearchableIndex isIndexingAvailable])
return;
NSString * localeLanguageId = [[AppInfo sharedInfo] languageId];
if ([localeLanguageId isEqualToString:[MWMSettings spotlightLocaleLanguageId]])
return;
auto const & categories = GetFramework().GetDisplayedCategories();
auto const & categoriesKeys = categories.GetKeys();
NSMutableArray<CSSearchableItem *> * items = [@[] mutableCopy];
for (auto const & categoryKey : categoriesKeys)
{
CSSearchableItemAttributeSet * attrSet = [[CSSearchableItemAttributeSet alloc]
initWithItemContentType:static_cast<NSString *>(kUTTypeItem)];
NSString * categoryName = nil;
NSMutableDictionary<NSString *, NSString *> * localizedStrings = [@{} mutableCopy];
categories.ForEachSynonym(categoryKey, [&localizedStrings, &localeLanguageId, &categoryName](
string const & name, string const & locale) {
NSString * nsName = @(name.c_str());
NSString * nsLocale = @(locale.c_str());
if ([localeLanguageId isEqualToString:nsLocale])
categoryName = nsName;
localizedStrings[nsLocale] = nsName;
});
attrSet.alternateNames = localizedStrings.allValues;
attrSet.keywords = localizedStrings.allValues;
attrSet.title = categoryName;
attrSet.displayName = [[CSLocalizedString alloc] initWithLocalizedStrings:localizedStrings];
NSString * categoryKeyString = @(categoryKey.c_str());
NSString * imageName = [NSString stringWithFormat:@"ic_%@_spotlight", categoryKeyString];
attrSet.thumbnailData = UIImagePNGRepresentation([UIImage imageNamed:imageName]);
CSSearchableItem * item =
[[CSSearchableItem alloc] initWithUniqueIdentifier:categoryKeyString
domainIdentifier:@"maps.me.categories"
attributeSet:attrSet];
[items addObject:item];
}
[[CSSearchableIndex defaultSearchableIndex]
indexSearchableItems:items
completionHandler:^(NSError * _Nullable error) {
if (error)
{
[[Crashlytics sharedInstance] recordError:error];
LOG(LERROR,
("addCategoriesToSpotlight failed: ", error.localizedDescription.UTF8String));
}
else
{
LOG(LINFO, ("addCategoriesToSpotlight succeded"));
[MWMSettings setSpotlightLocaleLanguageId:localeLanguageId];
}
}];
}
@end

View file

@ -0,0 +1,6 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
}
}

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_atm_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_atm_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_atm_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_bank_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_bank_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_bank_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_cafe_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_cafe_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_cafe_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_entertainment_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_entertainment_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_entertainment_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_food_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_food_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_food_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_fuel_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_fuel_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_fuel_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_hospital_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_hospital_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_hospital_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_hotel_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_hotel_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_hotel_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_parking_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_parking_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_parking_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_pharmacy_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_pharmacy_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_pharmacy_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_police_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_police_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_police_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_post_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_post_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_post_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_shop_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_shop_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_shop_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_toilet_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_toilet_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_toilet_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_tourism_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_tourism_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_tourism_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_transport_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_transport_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_transport_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "ic_wifi_spotlight.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ic_wifi_spotlight@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "ic_wifi_spotlight@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -27,4 +27,7 @@
+ (BOOL)routingDisclaimerApproved;
+ (void)setRoutingDisclaimerApproved;
+ (NSString *)spotlightLocaleLanguageId;
+ (void)setSpotlightLocaleLanguageId:(NSString *)spotlightLocaleLanguageId;
@end

View file

@ -17,6 +17,7 @@ char const * kCompassCalibrationEnabledKey = "CompassCalibrationEnabled";
char const * kRoutingDisclaimerApprovedKey = "IsDisclaimerApproved";
NSString * const kUDAutoNightModeOff = @"AutoNightModeOff";
NSString * const kSpotlightLocaleLanguageId = @"SpotlightLocaleLanguageId";
} // namespace
@implementation MWMSettings
@ -117,4 +118,16 @@ NSString * const kUDAutoNightModeOff = @"AutoNightModeOff";
}
+ (void)setRoutingDisclaimerApproved { settings::Set(kRoutingDisclaimerApprovedKey, true); }
+ (NSString *)spotlightLocaleLanguageId
{
return [[NSUserDefaults standardUserDefaults] stringForKey:kSpotlightLocaleLanguageId];
}
+ (void)setSpotlightLocaleLanguageId:(NSString *)spotlightLocaleLanguageId
{
NSUserDefaults * ud = [NSUserDefaults standardUserDefaults];
[ud setObject:spotlightLocaleLanguageId forKey:kSpotlightLocaleLanguageId];
[ud synchronize];
}
@end

View file

@ -258,6 +258,10 @@
34BC72241B0DECAE0012A34B /* MWMMapViewControlsManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34BC72111B0DECAE0012A34B /* MWMMapViewControlsManager.mm */; };
34BF0CC61C31304A00D097EB /* MWMAuthorizationCommon.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34BF0CC51C31304A00D097EB /* MWMAuthorizationCommon.mm */; };
34BF0CC71C31304A00D097EB /* MWMAuthorizationCommon.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34BF0CC51C31304A00D097EB /* MWMAuthorizationCommon.mm */; };
34BF68601D74585D001752F6 /* MWMSearch+CoreSpotlight.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34BF685F1D74585D001752F6 /* MWMSearch+CoreSpotlight.mm */; };
34BF68611D74585D001752F6 /* MWMSearch+CoreSpotlight.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34BF685F1D74585D001752F6 /* MWMSearch+CoreSpotlight.mm */; };
34BF68631D7459E6001752F6 /* CoreSpotlight.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34BF68621D7459E6001752F6 /* CoreSpotlight.framework */; };
34BF68641D7459EF001752F6 /* CoreSpotlight.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34BF68621D7459E6001752F6 /* CoreSpotlight.framework */; };
34C2431B1CEDBDBA0006B7DC /* MWMEditorAdditionalNamesTableViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34C2431A1CEDBDBA0006B7DC /* MWMEditorAdditionalNamesTableViewController.mm */; };
34C2431C1CEDBDBA0006B7DC /* MWMEditorAdditionalNamesTableViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34C2431A1CEDBDBA0006B7DC /* MWMEditorAdditionalNamesTableViewController.mm */; };
34C659471BD12A77009DC20A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 34C659451BD12A77009DC20A /* InfoPlist.strings */; };
@ -1145,6 +1149,9 @@
34BC72111B0DECAE0012A34B /* MWMMapViewControlsManager.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; lineEnding = 0; path = MWMMapViewControlsManager.mm; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
34BF0CC51C31304A00D097EB /* MWMAuthorizationCommon.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMAuthorizationCommon.mm; sourceTree = "<group>"; };
34BF0CC81C31306300D097EB /* MWMAuthorizationCommon.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MWMAuthorizationCommon.h; sourceTree = "<group>"; };
34BF685E1D745815001752F6 /* MWMSearch+CoreSpotlight.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MWMSearch+CoreSpotlight.h"; sourceTree = "<group>"; };
34BF685F1D74585D001752F6 /* MWMSearch+CoreSpotlight.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = "MWMSearch+CoreSpotlight.mm"; sourceTree = "<group>"; };
34BF68621D7459E6001752F6 /* CoreSpotlight.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreSpotlight.framework; path = System/Library/Frameworks/CoreSpotlight.framework; sourceTree = SDKROOT; };
34C243191CEDBDBA0006B7DC /* MWMEditorAdditionalNamesTableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMEditorAdditionalNamesTableViewController.h; sourceTree = "<group>"; };
34C2431A1CEDBDBA0006B7DC /* MWMEditorAdditionalNamesTableViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMEditorAdditionalNamesTableViewController.mm; sourceTree = "<group>"; };
34C659461BD12A77009DC20A /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/InfoPlist.strings; sourceTree = "<group>"; };
@ -1596,6 +1603,7 @@
F652D9141CFEE47000FC29A0 /* SafariServices.framework in Frameworks */,
845C89351C8983F300940D7F /* CoreText.framework in Frameworks */,
845C89361C8983F300940D7F /* libc++.tbd in Frameworks */,
34BF68641D7459EF001752F6 /* CoreSpotlight.framework in Frameworks */,
845C89371C8983F300940D7F /* QuickLook.framework in Frameworks */,
288765080DF74369002DB57D /* CoreGraphics.framework in Frameworks */,
34A62D4E1C903533007FDCB7 /* Fabric.framework in Frameworks */,
@ -1641,6 +1649,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
34BF68631D7459E6001752F6 /* CoreSpotlight.framework in Frameworks */,
F659FC6A1CF35C24000A06B1 /* SafariServices.framework in Frameworks */,
341F09841C20138100F18AC5 /* libpugixml.a in Frameworks */,
3411387D1C15AE73002E3B3E /* libeditor.a in Frameworks */,
@ -1816,6 +1825,7 @@
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
isa = PBXGroup;
children = (
34BF68621D7459E6001752F6 /* CoreSpotlight.framework */,
343E8B361D08004C0046AEEE /* libstdc++.tbd */,
343E8B331D07F84C0046AEEE /* Pushwoosh.framework */,
F659FC691CF35C24000A06B1 /* SafariServices.framework */,
@ -2000,6 +2010,8 @@
3436FE801D366CDD005CD87B /* MWMSearch.h */,
3436FE811D366CDD005CD87B /* MWMSearch.mm */,
347D5CA11D376B9F00FA28DD /* MWMSearchObserver.h */,
34BF685E1D745815001752F6 /* MWMSearch+CoreSpotlight.h */,
34BF685F1D74585D001752F6 /* MWMSearch+CoreSpotlight.mm */,
);
path = Search;
sourceTree = "<group>";
@ -3593,6 +3605,7 @@
34CC4C091B81F3B500E44C1F /* MWMSearchTabbedViewController.mm in Sources */,
340837161B72451A00B5C185 /* MWMShareActivityItem.mm in Sources */,
34F9FB901C43AF2400F71201 /* MWMStreetEditorEditTableViewCell.mm in Sources */,
34BF68601D74585D001752F6 /* MWMSearch+CoreSpotlight.mm in Sources */,
978D4A291996C17300D72CA7 /* RichTextVC.mm in Sources */,
9747278418338F0C006B7CB7 /* UIViewController+Navigation.mm in Sources */,
F6BC1E521ACBF98600EF0360 /* MWMFacebookAlert.mm in Sources */,
@ -3820,6 +3833,7 @@
6741A9A31BF340DE002C974C /* main.mm in Sources */,
6741A9A41BF340DE002C974C /* MWMSearchTabbedViewController.mm in Sources */,
6741A9A51BF340DE002C974C /* MWMShareActivityItem.mm in Sources */,
34BF68611D74585D001752F6 /* MWMSearch+CoreSpotlight.mm in Sources */,
34F9FB911C43AF2400F71201 /* MWMStreetEditorEditTableViewCell.mm in Sources */,
6741A9A61BF340DE002C974C /* RichTextVC.mm in Sources */,
6741A9A71BF340DE002C974C /* UIViewController+Navigation.mm in Sources */,