From e76b719c6a3cac079d25a162d9ae5f0268ceccd6 Mon Sep 17 00:00:00 2001 From: Shadowfacts Date: Sun, 15 Mar 2020 23:54:04 -0400 Subject: [PATCH] Add context menu previews to explore VC --- .../Explore/ExploreViewController.swift | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Tusker/Screens/Explore/ExploreViewController.swift b/Tusker/Screens/Explore/ExploreViewController.swift index 0254ddec..bc023de5 100644 --- a/Tusker/Screens/Explore/ExploreViewController.swift +++ b/Tusker/Screens/Explore/ExploreViewController.swift @@ -238,6 +238,33 @@ class ExploreViewController: EnhancedTableViewController { return .delete } + override func tableView(_ tableView: UITableView, contextMenuConfigurationForRowAt indexPath: IndexPath, point: CGPoint) -> UIContextMenuConfiguration? { + switch dataSource.itemIdentifier(for: indexPath) { + case .bookmarks: + return UIContextMenuConfiguration(identifier: nil, previewProvider: { + return BookmarksTableViewController(mastodonController: self.mastodonController) + }, actionProvider: nil) + + case let .list(list): + return UIContextMenuConfiguration(identifier: nil, previewProvider: { + return ListTimelineViewController(for: list, mastodonController: self.mastodonController) + }, actionProvider: nil) + + case let .savedHashtag(hashtag): + return UIContextMenuConfiguration(identifier: nil, previewProvider: { + return HashtagTimelineViewController(for: hashtag, mastodonController: self.mastodonController) + }, actionProvider: nil) + + case let .savedInstance(url): + return UIContextMenuConfiguration(identifier: nil, previewProvider: { + return InstanceTimelineViewController(for: url, parentMastodonController: self.mastodonController) + }, actionProvider: nil) + + default: + return nil + } + } + } extension ExploreViewController {