59 lines
1.8 KiB
Swift
59 lines
1.8 KiB
Swift
//
|
|
// AddSavedHashtagViewController.swift
|
|
// Tusker
|
|
//
|
|
// Created by Shadowfacts on 12/19/19.
|
|
// Copyright © 2019 Shadowfacts. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
import Pachyderm
|
|
|
|
class AddSavedHashtagViewController: SearchResultsViewController {
|
|
|
|
var searchController: UISearchController!
|
|
|
|
override func viewDidLoad() {
|
|
super.viewDidLoad()
|
|
|
|
delegate = self
|
|
onlySections = [.hashtags]
|
|
|
|
searchController = UISearchController(searchResultsController: nil)
|
|
searchController.obscuresBackgroundDuringPresentation = false
|
|
searchController.hidesNavigationBarDuringPresentation = false
|
|
searchController.searchBar.autocapitalizationType = .none
|
|
searchController.searchBar.placeholder = NSLocalizedString("Search for hashtags to save", comment: "add saved hashtag search field placeholder")
|
|
searchController.searchBar.delegate = self
|
|
|
|
definesPresentationContext = true
|
|
|
|
navigationItem.searchController = searchController
|
|
navigationItem.hidesSearchBarWhenScrolling = false
|
|
|
|
navigationItem.leftBarButtonItem = UIBarButtonItem(barButtonSystemItem: .cancel, target: self, action: #selector(cancelButtonPressed))
|
|
}
|
|
|
|
override func performSearch(query: String?) {
|
|
if let query = query, !query.starts(with: "#") {
|
|
super.performSearch(query: "#\(query)")
|
|
} else {
|
|
super.performSearch(query: query)
|
|
}
|
|
}
|
|
|
|
// MARK: - Interaction
|
|
|
|
@objc func cancelButtonPressed() {
|
|
dismiss(animated: true)
|
|
}
|
|
|
|
}
|
|
|
|
extension AddSavedHashtagViewController: SearchResultsViewControllerDelegate {
|
|
func selectedSearchResult(hashtag: Hashtag) {
|
|
SavedDataManager.shared.add(hashtag: hashtag, for: mastodonController.accountInfo!)
|
|
dismiss(animated: true)
|
|
}
|
|
}
|