diff --git a/Frameworks/Account/Account.swift b/Frameworks/Account/Account.swift index 36066fdf1..2f9682066 100644 --- a/Frameworks/Account/Account.swift +++ b/Frameworks/Account/Account.swift @@ -33,7 +33,7 @@ public enum AccountType: Int { case feedbin = 17 case feedWrangler = 18 case newsBlur = 19 - case readerAPI = 20 + case freshRSS = 20 // TODO: more } @@ -221,7 +221,7 @@ public final class Account: DisplayNameProvider, UnreadCountProvider, Container, self.delegate = LocalAccountDelegate() case .feedbin: self.delegate = FeedbinAccountDelegate(dataFolder: dataFolder, transport: transport) - case .readerAPI: + case .freshRSS: self.delegate = ReaderAPIAccountDelegate(dataFolder: dataFolder, transport: transport) default: fatalError("Only Local and Feedbin accounts are supported") @@ -250,8 +250,8 @@ public final class Account: DisplayNameProvider, UnreadCountProvider, Container, defaultName = "FeedWrangler" case .newsBlur: defaultName = "NewsBlur" - case .readerAPI: - defaultName = "Reader API" + case .freshRSS: + defaultName = "FreshRSS" } NotificationCenter.default.addObserver(self, selector: #selector(downloadProgressDidChange(_:)), name: .DownloadProgressDidChange, object: nil) @@ -331,7 +331,7 @@ public final class Account: DisplayNameProvider, UnreadCountProvider, Container, LocalAccountDelegate.validateCredentials(transport: transport, credentials: credentials, completion: completion) case .feedbin: FeedbinAccountDelegate.validateCredentials(transport: transport, credentials: credentials, completion: completion) - case .readerAPI: + case .freshRSS: ReaderAPIAccountDelegate.validateCredentials(transport: transport, credentials: credentials, endpoint: endpoint, completion: completion) default: break diff --git a/Mac/AppAssets.swift b/Mac/AppAssets.swift index a2610aa89..146af1bb1 100644 --- a/Mac/AppAssets.swift +++ b/Mac/AppAssets.swift @@ -34,8 +34,8 @@ struct AppAssets { return RSImage(named: "accountFeedbin") }() - static var accountReader: RSImage! = { - return RSImage(named: "accountReader") + static var accountFreshRSS: RSImage! = { + return RSImage(named: "accountFreshRSS") }() static var faviconTemplateImage: RSImage = { diff --git a/Mac/Preferences/Accounts/AccountsAddViewController.swift b/Mac/Preferences/Accounts/AccountsAddViewController.swift index 4e3019ea4..45d7adde6 100644 --- a/Mac/Preferences/Accounts/AccountsAddViewController.swift +++ b/Mac/Preferences/Accounts/AccountsAddViewController.swift @@ -64,8 +64,8 @@ extension AccountsAddViewController: NSTableViewDelegate { cell.accountNameLabel?.stringValue = NSLocalizedString("Feedbin", comment: "Feedbin") cell.accountImageView?.image = AppAssets.accountFeedbin case 2: - cell.accountNameLabel?.stringValue = NSLocalizedString("Reader API", comment: "Reader API") - cell.accountImageView?.image = AppAssets.accountReader + cell.accountNameLabel?.stringValue = NSLocalizedString("FreshRSS", comment: "FreshRSS") + cell.accountImageView?.image = AppAssets.accountFreshRSS default: break } @@ -92,6 +92,7 @@ extension AccountsAddViewController: NSTableViewDelegate { accountsAddWindowController = accountsFeedbinWindowController case 2: let accountsReaderAPIWindowController = AccountsReaderAPIWindowController() + accountsReaderAPIWindowController.accountType = .freshRSS accountsReaderAPIWindowController.runSheetOnWindow(self.view.window!) accountsAddWindowController = accountsReaderAPIWindowController default: diff --git a/Mac/Preferences/Accounts/AccountsPreferencesViewController.swift b/Mac/Preferences/Accounts/AccountsPreferencesViewController.swift index 5ad1aaa7a..4fa3af338 100644 --- a/Mac/Preferences/Accounts/AccountsPreferencesViewController.swift +++ b/Mac/Preferences/Accounts/AccountsPreferencesViewController.swift @@ -107,8 +107,8 @@ extension AccountsPreferencesViewController: NSTableViewDelegate { cell.imageView?.image = AppAssets.accountLocal case .feedbin: cell.imageView?.image = NSImage(named: "accountFeedbin") - case .readerAPI: - cell.imageView?.image = AppAssets.accountReader + case .freshRSS: + cell.imageView?.image = AppAssets.accountFreshRSS default: break } diff --git a/Mac/Preferences/Accounts/AccountsReaderAPI.xib b/Mac/Preferences/Accounts/AccountsReaderAPI.xib index 03f9f638d..ea4ee20e0 100644 --- a/Mac/Preferences/Accounts/AccountsReaderAPI.xib +++ b/Mac/Preferences/Accounts/AccountsReaderAPI.xib @@ -13,6 +13,8 @@ + + @@ -37,7 +39,7 @@ - + @@ -205,7 +207,4 @@ Gw - - - diff --git a/Mac/Preferences/Accounts/AccountsReaderAPIWindowController.swift b/Mac/Preferences/Accounts/AccountsReaderAPIWindowController.swift index 4bdf31256..f41a6327d 100644 --- a/Mac/Preferences/Accounts/AccountsReaderAPIWindowController.swift +++ b/Mac/Preferences/Accounts/AccountsReaderAPIWindowController.swift @@ -12,6 +12,9 @@ import RSWeb class AccountsReaderAPIWindowController: NSWindowController { + @IBOutlet weak var titleImageView: NSImageView! + @IBOutlet weak var titleLabel: NSTextField! + @IBOutlet weak var progressIndicator: NSProgressIndicator! @IBOutlet weak var usernameTextField: NSTextField! @IBOutlet weak var apiURLTextField: NSTextField! @@ -20,6 +23,7 @@ class AccountsReaderAPIWindowController: NSWindowController { @IBOutlet weak var actionButton: NSButton! var account: Account? + var accountType: AccountType? private weak var hostWindow: NSWindow? @@ -28,6 +32,16 @@ class AccountsReaderAPIWindowController: NSWindowController { } override func windowDidLoad() { + if let accountType = accountType { + switch accountType { + case .freshRSS: + titleImageView.image = AppAssets.accountFreshRSS + titleLabel.stringValue = NSLocalizedString("FreshRSS", comment: "FreshRSS") + default: + break + } + } + if let account = account, let credentials = try? account.retrieveBasicCredentials() { if case .basic(let username, let password) = credentials { usernameTextField.stringValue = username @@ -71,7 +85,7 @@ class AccountsReaderAPIWindowController: NSWindowController { } let credentials = Credentials.readerAPIBasicLogin(username: usernameTextField.stringValue, password: passwordTextField.stringValue) - Account.validateCredentials(type: .readerAPI, credentials: credentials, endpoint: apiURL) { [weak self] result in + Account.validateCredentials(type: accountType!, credentials: credentials, endpoint: apiURL) { [weak self] result in guard let self = self else { return } @@ -89,7 +103,7 @@ class AccountsReaderAPIWindowController: NSWindowController { var newAccount = false if self.account == nil { - self.account = AccountManager.shared.createAccount(type: .readerAPI) + self.account = AccountManager.shared.createAccount(type: self.accountType!) newAccount = true } diff --git a/Mac/Resources/Assets.xcassets/accountReader.imageset/Contents.json b/Mac/Resources/Assets.xcassets/accountFreshRSS.imageset/Contents.json similarity index 82% rename from Mac/Resources/Assets.xcassets/accountReader.imageset/Contents.json rename to Mac/Resources/Assets.xcassets/accountFreshRSS.imageset/Contents.json index d8d735f71..b2c62a136 100644 --- a/Mac/Resources/Assets.xcassets/accountReader.imageset/Contents.json +++ b/Mac/Resources/Assets.xcassets/accountFreshRSS.imageset/Contents.json @@ -2,7 +2,7 @@ "images" : [ { "idiom" : "universal", - "filename" : "accountReader.pdf" + "filename" : "accountFreshRSS.pdf" } ], "info" : { diff --git a/Mac/Resources/Assets.xcassets/accountReader.imageset/accountReader.pdf b/Mac/Resources/Assets.xcassets/accountFreshRSS.imageset/accountFreshRSS.pdf similarity index 73% rename from Mac/Resources/Assets.xcassets/accountReader.imageset/accountReader.pdf rename to Mac/Resources/Assets.xcassets/accountFreshRSS.imageset/accountFreshRSS.pdf index 8e49ad8aa..1ff98e115 100644 Binary files a/Mac/Resources/Assets.xcassets/accountReader.imageset/accountReader.pdf and b/Mac/Resources/Assets.xcassets/accountFreshRSS.imageset/accountFreshRSS.pdf differ diff --git a/Mac/Scriptability/Account+Scriptability.swift b/Mac/Scriptability/Account+Scriptability.swift index 6b338b75b..7b2fde624 100644 --- a/Mac/Scriptability/Account+Scriptability.swift +++ b/Mac/Scriptability/Account+Scriptability.swift @@ -142,8 +142,8 @@ class ScriptableAccount: NSObject, UniqueIdScriptingObject, ScriptingObjectConta osType = "FWrg" case .newsBlur: osType = "NBlr" - case .readerAPI: - osType = "Grdr" + case .freshRSS: + osType = "Frsh" } return osType.fourCharCode() }