opt: account (#1306)

* opt: account

* opt: account

* opt: live api

* opt: buvid

* Revert "opt: buvid"

This reverts commit da1ea68f8b.

* tweak
This commit is contained in:
My-Responsitories
2025-09-23 15:58:40 +08:00
committed by GitHub
parent 6b4fb0d611
commit 1345fd36e4
18 changed files with 173 additions and 208 deletions

View File

@@ -690,7 +690,11 @@ class LoginPageController extends GetxController
tokenInfo['refresh_token'],
);
await Future.wait([account.onChange(), AnonymousAccount().delete()]);
Accounts.accountMode.updateAll((_, a) => a == account ? account : a);
for (int i = 0; i < AccountType.values.length; i++) {
if (Accounts.accountMode[i].mid == account.mid) {
Accounts.accountMode[i] = account;
}
}
if (Accounts.main.isLogin) {
SmartDialog.showToast('登录成功');
} else {
@@ -704,7 +708,7 @@ class LoginPageController extends GetxController
SmartDialog.showToast('请先登录');
return Get.toNamed('/loginPage');
}
final selectAccount = Map.of(Accounts.accountMode);
final selectAccount = List.of(Accounts.accountMode);
final options = {
AnonymousAccount(): '0',
...Accounts.account.toMap().map(
@@ -729,9 +733,9 @@ class LoginPageController extends GetxController
.map(
(e) => Builder(
builder: (context) => RadioGroup(
groupValue: selectAccount[e],
groupValue: selectAccount[e.index],
onChanged: (v) {
selectAccount[e] = v!;
selectAccount[e.index] = v!;
(context as Element).markNeedsBuild();
},
child: WrapRadioOptionsGroup<Account>(
@@ -756,9 +760,9 @@ class LoginPageController extends GetxController
),
TextButton(
onPressed: () {
for (var i in selectAccount.entries) {
if (i.value != Accounts.get(i.key)) {
Accounts.set(i.key, i.value);
for (var (i, v) in selectAccount.indexed) {
if (v != Accounts.accountMode[i]) {
Accounts.set(AccountType.values[i], v);
}
}
Get.back();