Merge branch 'ismail/5117_thread_message_actions' into ismail/5092_thread_list

This commit is contained in:
ismailgulek
2021-11-22 14:59:07 +03:00
6 changed files with 79 additions and 62 deletions
@@ -39,6 +39,7 @@ final class ThreadListViewController: UIViewController {
private var keyboardAvoider: KeyboardAvoider?
private var errorPresenter: MXKErrorPresentation!
private var activityPresenter: ActivityIndicatorPresenter!
private var titleView: ThreadRoomTitleView!
// MARK: - Setup
@@ -85,6 +86,11 @@ final class ThreadListViewController: UIViewController {
return self.theme.statusBarStyle
}
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
guard let titleView = self.titleView else { return }
titleView.updateLayout(for: UIApplication.shared.statusBarOrientation)
}
// MARK: - Private
private func update(theme: Theme) {
@@ -112,12 +118,17 @@ final class ThreadListViewController: UIViewController {
private func setupViews() {
let titleView = ThreadRoomTitleView.loadFromNib()
titleView.mode = .allThreads
titleView.viewDelegate = self
titleView.configure(withViewModel: viewModel.titleViewModel)
self.titleView = titleView
navigationItem.leftItemsSupplementBackButton = true
navigationItem.backBarButtonItem = UIBarButtonItem(title: nil, style: .plain, target: nil, action: nil)
vc_removeBackTitle()
navigationItem.leftBarButtonItem = UIBarButtonItem(customView: titleView)
navigationItem.rightBarButtonItem = UIBarButtonItem(image: Asset.Images.threadsFilter.image,
style: .plain,
target: self,
action: #selector(filterButtonTapped(_:)))
self.threadsTableView.tableFooterView = UIView()
self.threadsTableView.register(cellType: ThreadTableViewCell.self)
self.threadsTableView.keyboardDismissMode = .interactive
@@ -187,6 +198,11 @@ final class ThreadListViewController: UIViewController {
}
// MARK: - Actions
@objc
private func filterButtonTapped(_ sender: UIBarButtonItem) {
self.viewModel.process(viewAction: .showFilterTypes)
}
}
@@ -238,13 +254,3 @@ extension ThreadListViewController: UITableViewDelegate {
}
}
// MARK: - ThreadRoomTitleViewDelegate
extension ThreadListViewController: ThreadRoomTitleViewDelegate {
func threadRoomTitleViewDidTapOptions(_ view: ThreadRoomTitleView) {
self.viewModel.process(viewAction: .showFilterTypes)
}
}