From ff829c0e592f62608258253a450e7673871031c3 Mon Sep 17 00:00:00 2001 From: Maurice Parker Date: Mon, 27 Jul 2020 21:21:11 -0500 Subject: [PATCH] Stop skipping the Today feed when finding next unread and looping around --- Multiplatform/Shared/Sidebar/SidebarModel.swift | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/Multiplatform/Shared/Sidebar/SidebarModel.swift b/Multiplatform/Shared/Sidebar/SidebarModel.swift index 24d93c825..ed40fe7d1 100644 --- a/Multiplatform/Shared/Sidebar/SidebarModel.swift +++ b/Multiplatform/Shared/Sidebar/SidebarModel.swift @@ -271,23 +271,19 @@ private extension SidebarModel { if let feedID = nextUnread(sidebarItems: sidebarItems, startingAt: startFeed) { return feedID } else { - if let firstFeed = sidebarItems.first?.children.first?.feed { - return nextUnread(sidebarItems: sidebarItems, startingAt: firstFeed) - } + return nextUnread(sidebarItems: sidebarItems, startingAt: nil) } - - return nil } @discardableResult - func nextUnread(sidebarItems: [SidebarItem], startingAt: Feed) -> FeedIdentifier? { - var foundStartFeed = false + func nextUnread(sidebarItems: [SidebarItem], startingAt: Feed?) -> FeedIdentifier? { + var foundStartFeed = startingAt == nil ? true : false var nextSidebarItem: SidebarItem? = nil for section in sidebarItems { if nextSidebarItem == nil { section.visit { sidebarItem in - if !foundStartFeed && sidebarItem.feed?.feedID == startingAt.feedID { + if !foundStartFeed && sidebarItem.feed?.feedID == startingAt?.feedID { foundStartFeed = true return false }