diff --git a/packages/stream_chat/lib/src/client/client.dart b/packages/stream_chat/lib/src/client/client.dart index ae6716fd..753eabc0 100644 --- a/packages/stream_chat/lib/src/client/client.dart +++ b/packages/stream_chat/lib/src/client/client.dart @@ -1376,6 +1376,8 @@ class ClientState { _listenChannelHidden(); _listenUserUpdated(); + + _listenAllChannelsRead(); } final _subscriptions = []; @@ -1405,6 +1407,18 @@ class ClientState { })); } + void _listenAllChannelsRead() { + _subscriptions + .add(_client.on(EventType.notificationMarkRead).listen((event) { + if (event.cid == null) { + channels + .forEach((key, value) { + value.state?.unreadCount = 0; + }); + } + })); + } + void _listenChannelDeleted() { _subscriptions.add(_client .on(