future already completed

This commit is contained in:
mertalev
2026-02-16 15:23:34 -05:00
parent a476c7dad6
commit a19d2484a2
7 changed files with 8 additions and 4 deletions

View File

@@ -79,7 +79,7 @@ class BackUpState {
DateTime? progressInFileSpeedUpdateTime,
int? progressInFileSpeedUpdateSentBytes,
double? iCloudDownloadProgress,
Completer? cancelToken,
Completer<void>? cancelToken,
ServerDiskInfo? serverInfo,
bool? autoBackup,
bool? backgroundBackup,

View File

@@ -5,7 +5,7 @@ import 'package:collection/collection.dart';
import 'package:immich_mobile/models/backup/current_upload_asset.model.dart';
class ManualUploadState {
final Completer cancelToken;
final Completer<void> cancelToken;
// Current Backup Asset
final CurrentUploadAsset currentUploadAsset;
@@ -45,7 +45,7 @@ class ManualUploadState {
List<double>? progressInFileSpeeds,
DateTime? progressInFileSpeedUpdateTime,
int? progressInFileSpeedUpdateSentBytes,
Completer? cancelToken,
Completer<void>? cancelToken,
CurrentUploadAsset? currentUploadAsset,
int? totalAssetsToUpload,
int? successfulUploads,

View File

@@ -102,6 +102,7 @@ class _UploadProgressDialog extends ConsumerWidget {
ImmichTextButton(
onPressed: () {
ref.read(manualUploadCancelTokenProvider)?.complete();
ref.read(manualUploadCancelTokenProvider.notifier).state = null;
Navigator.of(context).pop();
},
labelText: 'cancel'.t(context: context),

View File

@@ -31,4 +31,4 @@ final assetUploadProgressProvider = NotifierProvider<AssetUploadProgressNotifier
AssetUploadProgressNotifier.new,
);
final manualUploadCancelTokenProvider = StateProvider<Completer?>((ref) => null);
final manualUploadCancelTokenProvider = StateProvider<Completer<void>?>((ref) => null);

View File

@@ -497,6 +497,7 @@ class BackupNotifier extends StateNotifier<BackUpState> {
state.cancelToken.complete();
state = state.copyWith(
backupProgress: BackUpProgressEnum.idle,
cancelToken: Completer<void>(),
progressInPercentage: 0.0,
progressInFileSize: "0 B / 0 B",
progressInFileSpeed: 0,

View File

@@ -328,6 +328,7 @@ class ManualUploadNotifier extends StateNotifier<ManualUploadState> {
_backupProvider.updateBackupProgress(BackUpProgressEnum.idle);
}
state = state.copyWith(
cancelToken: Completer<void>(),
progressInPercentage: 0,
progressInFileSize: "0 B / 0 B",
progressInFileSpeed: 0,

View File

@@ -320,6 +320,7 @@ class BackgroundService {
case "systemStop":
_canceledBySystem = true;
_cancellationToken?.complete();
_cancellationToken = null;
return true;
default:
dPrint(() => "Unknown method ${call.method}");