[ios] refactor search - use SearchQuery class instead of text+locale+isCategory

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
This commit is contained in:
Kiryl Kaveryn
2025-05-23 17:06:32 +04:00
committed by Konstantin Pastbin
parent 09171651ff
commit 96c24cf973
18 changed files with 145 additions and 122 deletions

View File

@@ -1,6 +1,6 @@
@objc(MWMSearchTabViewControllerDelegate)
protocol SearchTabViewControllerDelegate: SearchOnMapScrollViewDelegate {
func searchTabController(_ viewController: SearchTabViewController, didSearch: String, withCategory: Bool)
func searchTabController(_ viewController: SearchTabViewController, didSearch: SearchQuery)
}
@objc(MWMSearchTabViewController)
@@ -9,7 +9,7 @@ final class SearchTabViewController: TabViewController {
case history = 0
case categories
}
private static let selectedIndexKey = "SearchTabViewController_selectedIndexKey"
@objc weak var delegate: SearchTabViewControllerDelegate?
@@ -72,14 +72,15 @@ extension SearchTabViewController: SearchOnMapScrollViewDelegate {
extension SearchTabViewController: SearchCategoriesViewControllerDelegate {
func categoriesViewController(_ viewController: SearchCategoriesViewController,
didSelect category: String) {
let query = L(category) + " "
delegate?.searchTabController(self, didSearch: query, withCategory: true)
let query = SearchQuery(L(category) + " ", source: .category)
delegate?.searchTabController(self, didSearch: query)
}
}
extension SearchTabViewController: SearchHistoryViewControllerDelegate {
func searchHistoryViewController(_ viewController: SearchHistoryViewController,
didSelect query: String) {
delegate?.searchTabController(self, didSearch: query, withCategory: false)
didSelect query: String) {
let query = SearchQuery(query.trimmingCharacters(in: .whitespacesAndNewlines) + " ", source: .suggestion)
delegate?.searchTabController(self, didSearch: query)
}
}