Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files

Added Complementary Search setting

  • Loading branch information
mahmoud-adam85 authored and Tim Palade committed Mar 26, 2018
1 parent 3432b6e commit 67c8484d59bc41de5ebb20a95c68629ee51d9da6
@@ -23,7 +23,42 @@ class HumanWebSetting: CliqzOnOffSetting {
return HumanWebSettingsTableViewController()
}
}

class CliqzSearchSetting: Setting, SearchEnginePickerDelegate {
let profile: Profile
var navigationController: UINavigationController?

override var accessoryType: UITableViewCellAccessoryType { return .disclosureIndicator }

override var style: UITableViewCellStyle { return .value1 }

override var status: NSAttributedString { return NSAttributedString(string: profile.searchEngines.defaultEngine.shortName) }

override var accessibilityIdentifier: String? { return "Search" }

init(settings: SettingsTableViewController) {
self.profile = settings.profile
super.init(title: NSAttributedString(string: NSLocalizedString("Complementary Search", tableName: "Cliqz", comment: "[Settings] Complementary Search"), attributes: [NSForegroundColorAttributeName: SettingsUX.TableViewRowTextColor]))
}

override func onClick(_ navigationController: UINavigationController?) {
let searchEnginePicker = SearchEnginePicker()
// Order alphabetically, so that picker is always consistently ordered.
// Every engine is a valid choice for the default engine, even the current default engine.
let searchEngines = profile.searchEngines
searchEnginePicker.engines = searchEngines.orderedEngines.sorted { e, f in e.shortName < f.shortName }
searchEnginePicker.delegate = self
searchEnginePicker.selectedSearchEngineName = searchEngines.defaultEngine.shortName
navigationController?.pushViewController(searchEnginePicker, animated: true)
self.navigationController = navigationController
}

func searchEnginePicker(_ searchEnginePicker: SearchEnginePicker?, didSelectSearchEngine searchEngine: OpenSearchEngine?) {
if let engine = searchEngine {
profile.searchEngines.defaultEngine = engine
}
_ = navigationController?.popViewController(animated: true)
}
}

class AutoForgetTabSetting: CliqzOnOffSetting {

@@ -52,6 +52,8 @@ class CliqzAppSettingsTableViewController: AppSettingsTableViewController {

// MARK:- Helper methods
private func generateSearchSettings(prefs: Prefs) -> [Setting] {
let cliqzSearchSetting = CliqzSearchSetting(settings: self)

let querySuggestionTitle = NSLocalizedString("Search Query Suggestions", tableName: "Cliqz", comment: "[Settings] Search Query Suggestions")
let querySuggestionSettings = BoolSetting(prefs: prefs,
prefKey: SettingsPrefs.querySuggestionPrefKey,
@@ -69,9 +71,9 @@ class CliqzAppSettingsTableViewController: AppSettingsTableViewController {

var searchSettings: [Setting]!
if QuerySuggestions.querySuggestionEnabledForCurrentRegion() {
searchSettings = [querySuggestionSettings, blockExplicitContentSettings, humanWebSetting]
searchSettings = [querySuggestionSettings, blockExplicitContentSettings, humanWebSetting, cliqzSearchSetting]
} else {
searchSettings = [blockExplicitContentSettings, humanWebSetting]
searchSettings = [blockExplicitContentSettings, humanWebSetting, cliqzSearchSetting]
}
return searchSettings
}

0 comments on commit 67c8484

Please sign in to comment.