diff --git a/iphone/CoreApi/CoreApi/Search/MWMSearchFrameworkHelper.h b/iphone/CoreApi/CoreApi/Search/MWMSearchFrameworkHelper.h index 56632ce4c..11bfefe75 100644 --- a/iphone/CoreApi/CoreApi/Search/MWMSearchFrameworkHelper.h +++ b/iphone/CoreApi/CoreApi/Search/MWMSearchFrameworkHelper.h @@ -4,11 +4,11 @@ NS_ASSUME_NONNULL_BEGIN @interface MWMSearchFrameworkHelper : NSObject -- (NSArray *)searchCategories; ++ (NSArray *)searchCategories; -- (BOOL)isSearchHistoryEmpty; -- (NSArray *)lastSearchQueries; -- (void)clearSearchHistory; ++ (BOOL)isSearchHistoryEmpty; ++ (NSArray *)lastSearchQueries; ++ (void)clearSearchHistory; @end diff --git a/iphone/CoreApi/CoreApi/Search/MWMSearchFrameworkHelper.mm b/iphone/CoreApi/CoreApi/Search/MWMSearchFrameworkHelper.mm index d83de60a9..7fd43ba78 100644 --- a/iphone/CoreApi/CoreApi/Search/MWMSearchFrameworkHelper.mm +++ b/iphone/CoreApi/CoreApi/Search/MWMSearchFrameworkHelper.mm @@ -6,34 +6,30 @@ @implementation MWMSearchFrameworkHelper -- (NSArray *)searchCategories ++ (NSArray *)searchCategories { NSMutableArray * result = [NSMutableArray array]; auto const & categories = GetFramework().GetDisplayedCategories().GetKeys(); for (auto const & item : categories) - { [result addObject:@(item.c_str())]; - } return [result copy]; } -- (BOOL)isSearchHistoryEmpty ++ (BOOL)isSearchHistoryEmpty { return GetFramework().GetSearchAPI().GetLastSearchQueries().empty(); } -- (NSArray *)lastSearchQueries ++ (NSArray *)lastSearchQueries { NSMutableArray * result = [NSMutableArray array]; auto const & queries = GetFramework().GetSearchAPI().GetLastSearchQueries(); for (auto const & item : queries) - { [result addObject:@(item.second.c_str())]; - } return [result copy]; } -- (void)clearSearchHistory ++ (void)clearSearchHistory { GetFramework().GetSearchAPI().ClearSearchHistory(); } diff --git a/iphone/Maps/UI/Search/Tabs/CategoriesTab/SearchCategoriesViewController.swift b/iphone/Maps/UI/Search/Tabs/CategoriesTab/SearchCategoriesViewController.swift index ce5abe53e..64c569526 100644 --- a/iphone/Maps/UI/Search/Tabs/CategoriesTab/SearchCategoriesViewController.swift +++ b/iphone/Maps/UI/Search/Tabs/CategoriesTab/SearchCategoriesViewController.swift @@ -7,7 +7,7 @@ final class SearchCategoriesViewController: MWMTableViewController { private weak var delegate: SearchCategoriesViewControllerDelegate? private let categories: [String] - init(frameworkHelper: MWMSearchFrameworkHelper, delegate: SearchCategoriesViewControllerDelegate?) { + init(frameworkHelper: MWMSearchFrameworkHelper.Type, delegate: SearchCategoriesViewControllerDelegate?) { self.delegate = delegate categories = frameworkHelper.searchCategories() super.init(nibName: nil, bundle: nil) diff --git a/iphone/Maps/UI/Search/Tabs/HistoryTab/SearchHistoryViewController.swift b/iphone/Maps/UI/Search/Tabs/HistoryTab/SearchHistoryViewController.swift index 85f63dc55..7283376d0 100644 --- a/iphone/Maps/UI/Search/Tabs/HistoryTab/SearchHistoryViewController.swift +++ b/iphone/Maps/UI/Search/Tabs/HistoryTab/SearchHistoryViewController.swift @@ -6,14 +6,14 @@ protocol SearchHistoryViewControllerDelegate: SearchOnMapScrollViewDelegate { final class SearchHistoryViewController: MWMViewController { private weak var delegate: SearchHistoryViewControllerDelegate? private var lastQueries: [String] = [] - private let frameworkHelper: MWMSearchFrameworkHelper + private let frameworkHelper: MWMSearchFrameworkHelper.Type private let emptyHistoryView = PlaceholderView(title: L("search_history_title"), subtitle: L("search_history_text")) private let tableView = UITableView() // MARK: - Init - init(frameworkHelper: MWMSearchFrameworkHelper, delegate: SearchHistoryViewControllerDelegate?) { + init(frameworkHelper: MWMSearchFrameworkHelper.Type, delegate: SearchHistoryViewControllerDelegate?) { self.delegate = delegate self.frameworkHelper = frameworkHelper super.init(nibName: nil, bundle: nil) diff --git a/iphone/Maps/UI/Search/Tabs/SearchTabViewController.swift b/iphone/Maps/UI/Search/Tabs/SearchTabViewController.swift index 9660879aa..6ace28cfc 100644 --- a/iphone/Maps/UI/Search/Tabs/SearchTabViewController.swift +++ b/iphone/Maps/UI/Search/Tabs/SearchTabViewController.swift @@ -13,10 +13,8 @@ final class SearchTabViewController: TabViewController { private static let selectedIndexKey = "SearchTabViewController_selectedIndexKey" @objc weak var delegate: SearchTabViewControllerDelegate? - private lazy var frameworkHelper: MWMSearchFrameworkHelper = { - return MWMSearchFrameworkHelper() - }() - + private var frameworkHelper = MWMSearchFrameworkHelper.self + private var activeTab: SearchActiveTab = SearchActiveTab.init(rawValue: UserDefaults.standard.integer(forKey: SearchTabViewController.selectedIndexKey)) ?? .categories { didSet {