Change ReadFilter to ReadFilterType and differentiate the ReadFilter from the query filter.

This commit is contained in:
Maurice Parker
2019-11-22 09:40:39 -06:00
parent a5b4d570af
commit eea5d6f327
8 changed files with 17 additions and 16 deletions

View File

@@ -89,7 +89,7 @@ class MasterTimelineViewController: UITableViewController, UndoableCommandRunner
// MARK: Actions
@IBAction func toggleFilter(_ sender: Any) {
switch coordinator.articleReadFilter {
switch coordinator.articleReadFilterType {
case .none:
filterButton.image = AppAssets.filterActiveImage
coordinator.hideUnreadArticles()
@@ -493,7 +493,7 @@ private extension MasterTimelineViewController {
navigationItem.titleView = titleView
}
switch coordinator.articleReadFilter {
switch coordinator.articleReadFilterType {
case .none:
filterButton.image = AppAssets.filterInactiveImage
default:

View File

@@ -116,7 +116,7 @@ class SceneCoordinator: NSObject, UndoableCommandRunner, UnreadCountProvider {
return treeControllerDelegate.isUnreadFiltered
}
var articleReadFilter: ReadFilter = .none
var articleReadFilterType: ReadFilterType = .none
var rootNode: Node {
return treeController.rootNode
@@ -482,12 +482,12 @@ class SceneCoordinator: NSObject, UndoableCommandRunner, UnreadCountProvider {
}
func showAllArticles() {
articleReadFilter = .none
articleReadFilterType = .none
refreshTimeline()
}
func hideUnreadArticles() {
articleReadFilter = .read
articleReadFilterType = .read
refreshTimeline()
}
@@ -1150,7 +1150,7 @@ private extension SceneCoordinator {
func setTimelineFeed(_ feed: Feed?, completion: (() -> Void)? = nil) {
timelineFeed = feed
timelineMiddleIndexPath = nil
articleReadFilter = feed?.defaultReadFilter ?? .none
articleReadFilterType = feed?.defaultReadFilterType ?? .none
fetchAndReplaceArticlesAsync {
self.masterTimelineViewController?.reinitializeArticles()
@@ -1491,7 +1491,8 @@ private extension SceneCoordinator {
precondition(Thread.isMainThread)
cancelPendingAsyncFetches()
let fetchOperation = FetchRequestOperation(id: fetchSerialNumber, readFilter: articleReadFilter, representedObjects: representedObjects) { [weak self] (articles, operation) in
let readFilter = articleReadFilterType != .none
let fetchOperation = FetchRequestOperation(id: fetchSerialNumber, readFilter: readFilter, representedObjects: representedObjects) { [weak self] (articles, operation) in
precondition(Thread.isMainThread)
guard !operation.isCanceled, let strongSelf = self, operation.id == strongSelf.fetchSerialNumber else {
return