mirror of
https://github.com/yattee/yattee.git
synced 2026-11-01 01:17:20 +00:00
Keep one login's verdicts and content off another's
A feed failure recorded its verdict before checking whether anyone was still waiting for it, and the verdict resolves the *currently* selected account — so a 401 from a credential the app had already moved off could mark its replacement, or a different account, as rejected indefinitely. The instance browser drops its feed, subscriptions and playlists when the selected login changes. Nothing else there would notice: the instance, the tab and the "already has data" shortcut are all unchanged between two accounts on the same server. Caches are no longer discarded while the identity is unresolved. With iCloud Drive off the scope drops to unresolved on every activation and comes back the same, and the context reads as local in between — which looked like a move and threw the caches away several times a day. Local is always in the account picker again. Its feed needs a Yattee Server and reports that itself; with correction no longer moving away from local, leaving it out of the list made it unreachable once left. And the subscriptions view reloads when an instance is switched off, which moves reads to local without touching the context or any status.
This commit is contained in:
@@ -74,13 +74,11 @@ final class SubscriptionAccountValidator {
|
||||
var availableAccounts: [SubscriptionAccount] {
|
||||
var accounts: [SubscriptionAccount] = []
|
||||
|
||||
// Add local if Yattee Server is configured and enabled
|
||||
let hasYatteeServer = instancesManager.instances.contains {
|
||||
$0.type == .yatteeServer && $0.isEnabled
|
||||
}
|
||||
if hasYatteeServer {
|
||||
accounts.append(.local)
|
||||
}
|
||||
// Local is always offered. Its *feed* needs a Yattee Server and says so
|
||||
// itself when there is none; that is not a reason to make the user's
|
||||
// own data unselectable — and since correction no longer moves away
|
||||
// from local, leaving it out would make it unreachable once left.
|
||||
accounts.append(.local)
|
||||
|
||||
// Add logged-in and enabled Invidious instances
|
||||
for instance in instancesManager.instances {
|
||||
|
||||
Reference in New Issue
Block a user