From e39972bd64d9cfe6c591b5379e5538f7c7ce4ee2 Mon Sep 17 00:00:00 2001 From: Maurice Parker Date: Sat, 3 Aug 2019 17:07:43 -0500 Subject: [PATCH] Correct First Unread button to select the first unread in the timeline and show article in detail view. Issue #695 --- iOS/AppCoordinator.swift | 17 +++++++++++++++-- .../MasterTimelineViewController.swift | 4 +--- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/iOS/AppCoordinator.swift b/iOS/AppCoordinator.swift index d105695cd..2cf8872b3 100644 --- a/iOS/AppCoordinator.swift +++ b/iOS/AppCoordinator.swift @@ -510,6 +510,10 @@ class AppCoordinator: NSObject, UndoableCommandRunner { } } + func selectFirstUnread() { + selectFirstUnreadArticleInTimeline() + } + func selectNextUnread() { // This should never happen, but I don't want to risk throwing us @@ -718,9 +722,13 @@ private extension AppCoordinator { // MARK: Select Next Unread + @discardableResult + func selectFirstUnreadArticleInTimeline() -> Bool { + return selectArticleInTimeline(startingRow: 0) + } + @discardableResult func selectNextUnreadArticleInTimeline() -> Bool { - let startingRow: Int = { if let indexPath = currentArticleIndexPath { return indexPath.row @@ -729,10 +737,15 @@ private extension AppCoordinator { } }() + return selectArticleInTimeline(startingRow: startingRow) + } + + func selectArticleInTimeline(startingRow: Int) -> Bool { + for i in startingRow..