Browse Source

neon: Fix missing active account

pull/359/head
jld3103 2 years ago
parent
commit
7ededd739d
No known key found for this signature in database
GPG Key ID: 9062417B9E8EB7B3
  1. 18
      packages/neon/neon/lib/src/blocs/accounts.dart

18
packages/neon/neon/lib/src/blocs/accounts.dart

@ -37,20 +37,30 @@ class AccountsBloc extends Bloc implements AccountsBlocEvents, AccountsBlocState
}); });
final as = accounts.value; final as = accounts.value;
if (_globalOptions.rememberLastUsedAccount.value && _storage.containsKey(_keyLastUsedAccount)) { if (_globalOptions.rememberLastUsedAccount.value && _storage.containsKey(_keyLastUsedAccount)) {
final lastUsedAccountID = _storage.getString(_keyLastUsedAccount); final lastUsedAccountID = _storage.getString(_keyLastUsedAccount);
activeAccount.add(lastUsedAccountID != null ? as.find(lastUsedAccountID) : null); if (lastUsedAccountID != null) {
} else { final aa = as.find(lastUsedAccountID);
if (aa != null) {
setActiveAccount(aa);
}
}
}
unawaited( unawaited(
_globalOptions.initialAccount.stream.first.then((final lastAccount) { _globalOptions.initialAccount.stream.first.then((final lastAccount) {
final account = lastAccount != null ? as.find(lastAccount) : null; final account = lastAccount != null ? as.find(lastAccount) : null;
if (activeAccount.valueOrNull == null) {
if (account != null) { if (account != null) {
activeAccount.add(account); setActiveAccount(account);
} else if (as.isNotEmpty) {
setActiveAccount(as.first);
}
} }
}), }),
); );
} }
}
final RequestManager _requestManager; final RequestManager _requestManager;
final NeonPlatform _platform; final NeonPlatform _platform;

Loading…
Cancel
Save