revert(ui): keep extension update check silent on failure

A failed check simply means no update chip; the failure toast and its
state field are removed.
This commit is contained in:
Levi committed 2026-09-20 08:02:22 +08:00
1 parent a480c5bd14
commit 68402c85d3
4 files changed
+2 -22

No files matched your search

@@ -49,7 +49,6 @@ class ExtensionsState {
this.loadingMoreStore = false,
this.busyExtensionIds = const {},
this.devMode = false,
this.updateCheckFailed = false,
});
final List<Extension> installedExtensions;
@@ -64,7 +63,6 @@ class ExtensionsState {
final bool loadingMoreStore;
final Set<String> busyExtensionIds;
final bool devMode;
final bool updateCheckFailed;
UnmodifiableMapView<String, Extension> get installedMap =>
UnmodifiableMapView({for (final ext in installedExtensions) ext.identity: ext});
@@ -102,7 +100,6 @@ class ExtensionsState {
bool? loadingMoreStore,
Set<String>? busyExtensionIds,
bool? devMode,
bool? updateCheckFailed,
}) {
return ExtensionsState(
installedExtensions: installedExtensions ?? this.installedExtensions,
@@ -117,7 +114,6 @@ class ExtensionsState {
loadingMoreStore: loadingMoreStore ?? this.loadingMoreStore,
busyExtensionIds: busyExtensionIds ?? this.busyExtensionIds,
devMode: devMode ?? this.devMode,
updateCheckFailed: updateCheckFailed ?? this.updateCheckFailed,
);
}
}
@@ -263,23 +259,15 @@ class ExtensionsController extends AsyncNotifier<ExtensionsState> {
Future<void> checkUpdate() async {
final flags = <String, String>{};
var failed = false;
for (final ext in _current.installedExtensions) {
try {
final resp = await ref.read(gopeedServiceProvider).upgradeCheckExtension(ext.identity);
if (resp.newVersion.isNotEmpty) {
flags[ext.identity] = resp.newVersion;
}
} catch (_) {
failed = true;
}
} catch (_) {}
}
state = AsyncValue.data(
_current.copyWith(
updateFlags: flags,
updateCheckFailed: failed && _current.installedExtensions.isNotEmpty,
),
);
state = AsyncValue.data(_current.copyWith(updateFlags: flags));
}
void tryOpenDevMode() {
@@ -107,12 +107,6 @@ class _ExtensionsPageState extends ConsumerState<ExtensionsPage> {
});
}
final stateAsync = ref.watch(extensionsControllerProvider);
ref.listen(extensionsControllerProvider, (previous, next) {
final failed = next.value?.updateCheckFailed ?? false;
if (failed && previous?.value?.updateCheckFailed != true) {
showAppToast(context, context.l10n.extensionUpdateCheckFailed);
}
});
final body = Stack(
children: [
ColoredBox(
-1
View File
@@ -120,7 +120,6 @@
}
},
"extensionUpdateSuccess": "Updated successfully",
"extensionUpdateCheckFailed": "Failed to check for updates. Please check your network",
"extensionDelete": "Delete Extension",
"extensionAlreadyLatest": "It's already the latest version",
"extensionFind": "Find Extensions",
-1
View File
@@ -106,7 +106,6 @@
"extensionInstallSuccess": "安装成功",
"extensionUpdateConfirm": "确定将“{name}”更新到最新版本吗?",
"extensionUpdateSuccess": "更新成功",
"extensionUpdateCheckFailed": "检查更新失败,请检查网络后重试",
"extensionDelete": "删除扩展",
"extensionAlreadyLatest": "已经是最新版本",
"extensionFind": "获取扩展",