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..