From 59f3fb4b3d92af3c14ada55d354d2667d39f5a9b Mon Sep 17 00:00:00 2001 From: Anh Do Date: Sat, 21 Mar 2020 23:58:27 -0400 Subject: [PATCH] Handle account-level folder when syncing --- .../NewsBlurAccountDelegate+Internal.swift | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Frameworks/Account/NewsBlur/Internals/NewsBlurAccountDelegate+Internal.swift b/Frameworks/Account/NewsBlur/Internals/NewsBlurAccountDelegate+Internal.swift index 295cb9967..54579c361 100644 --- a/Frameworks/Account/NewsBlur/Internals/NewsBlurAccountDelegate+Internal.swift +++ b/Frameworks/Account/NewsBlur/Internals/NewsBlurAccountDelegate+Internal.swift @@ -147,10 +147,19 @@ extension NewsBlurAccountDelegate { // Sync the folders for (folderName, folderRelationships) in newsBlurFolderDict { - guard let folder = folderDict[folderName] else { return } - let newsBlurFolderFeedIDs = folderRelationships.map { String($0.feedID) } + // Handle account-level folder + if folderName == " " { + for feed in account.topLevelWebFeeds { + if !newsBlurFolderFeedIDs.contains(feed.webFeedID) { + account.removeWebFeed(feed) + } + } + } + + guard let folder = folderDict[folderName] else { return } + // Move any feeds not in the folder to the account for feed in folder.topLevelWebFeeds { if !newsBlurFolderFeedIDs.contains(feed.webFeedID) {