diff --git a/lib/features/mailbox/data/network/mailbox_isolate_worker.dart b/lib/features/mailbox/data/network/mailbox_isolate_worker.dart index 0ac96c0d4..58a93a306 100644 --- a/lib/features/mailbox/data/network/mailbox_isolate_worker.dart +++ b/lib/features/mailbox/data/network/mailbox_isolate_worker.dart @@ -39,13 +39,13 @@ class MailboxIsolateWorker { StreamController> onProgressController ) async { final result = await _isolateExecutor.execute( - arg1: ArgumentsSendPort(MailboxMarkAsReadArguments( + arg1: MailboxMarkAsReadArguments( _threadApi, _emailApi, accountId, - mailboxId)), - fun1: (arguments) => _handleMarkAsMailboxReadAction(arguments), - onUpdateProgress: (value) { + mailboxId), + fun1: _handleMarkAsMailboxReadAction, + notification: (value) { if (value is List) { log('MailboxIsolateWorker::markAsMailboxRead(): onUpdateProgress: COUNT ${value.length}'); log('MailboxIsolateWorker::markAsMailboxRead(): onUpdateProgress: TOTAL $totalEmailUnread'); @@ -60,21 +60,10 @@ class MailboxIsolateWorker { return result; } - static Future> _handleMarkAsMailboxReadAction(dynamic argumentsAction) async { - if (argumentsAction is! ArgumentsSendPort) { - log('MailboxIsolateWorker::_handleMarkAsMailboxReadAction(): argumentsAction NOT ArgumentsSendPort'); - return List.empty(); - } - - final args = argumentsAction.argument as MailboxMarkAsReadArguments; - final sendPort = argumentsAction.sendPort; - - if (sendPort != null) { - log('MailboxIsolateWorker::_handleMarkAsMailboxReadAction(): SEND_PORT NOT NULL'); - } else { - log('MailboxIsolateWorker::_handleMarkAsMailboxReadAction(): SEND_PORT NULL'); - } - + static Future> _handleMarkAsMailboxReadAction( + MailboxMarkAsReadArguments args, + TypeSendPort sendPort + ) async { List emailListCompleted = List.empty(growable: true); try { @@ -124,9 +113,7 @@ class MailboxIsolateWorker { log('MailboxIsolateWorker::_handleMarkAsMailboxRead(): MARK_READ: ${result.length}'); emailListCompleted.addAll(result); - if (sendPort != null) { - sendPort.send(ValueUpdate(emailListCompleted)); - } + sendPort.send(emailListCompleted); } } } catch (e) { diff --git a/pubspec.yaml b/pubspec.yaml index 5b7d08158..55c04c28b 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -170,10 +170,7 @@ dependencies: percent_indicator: 4.2.2 # Isolate - worker_manager: - git: - url: https://github.com/dab246/worker_manager.git - ref: improvement + worker_manager: 4.4.0 dev_dependencies: flutter_test: