fix(llc): Error while hiding channel and clearing message history.
Signed-off-by: xsahil03x <xdsahil@gmail.com>
This commit is contained in:
@@ -1,5 +1,10 @@
|
||||
## Upcoming
|
||||
|
||||
🐞 Fixed
|
||||
|
||||
- [[#1355]](https://github.com/GetStream/stream-chat-flutter/issues/1355) Fixed error while hiding channel and clearing
|
||||
message history.
|
||||
|
||||
✅ Added
|
||||
|
||||
- Expose `ChannelMute` class. [#1473](https://github.com/GetStream/stream-chat-flutter/issues/1473)
|
||||
|
||||
@@ -1485,19 +1485,11 @@ class Channel {
|
||||
/// will be removed for the user.
|
||||
Future<EmptyResponse> hide({bool clearHistory = false}) async {
|
||||
_checkInitialized();
|
||||
final response = await _client.hideChannel(
|
||||
return _client.hideChannel(
|
||||
id!,
|
||||
type,
|
||||
clearHistory: clearHistory,
|
||||
);
|
||||
if (clearHistory) {
|
||||
state!.truncate();
|
||||
final cid = _cid;
|
||||
if (cid != null) {
|
||||
await _client.chatPersistenceClient?.deleteMessageByCid(cid);
|
||||
}
|
||||
}
|
||||
return response;
|
||||
}
|
||||
|
||||
/// Removes the hidden status for the channel.
|
||||
|
||||
@@ -1567,7 +1567,7 @@ class ClientState {
|
||||
_client.on(EventType.channelHidden).listen((event) async {
|
||||
final eventChannel = event.channel!;
|
||||
await _client.chatPersistenceClient?.deleteChannels([eventChannel.cid]);
|
||||
channels[eventChannel.cid]?.dispose();
|
||||
channels.remove(eventChannel.cid)?.dispose();
|
||||
}),
|
||||
);
|
||||
}
|
||||
@@ -1606,7 +1606,7 @@ class ClientState {
|
||||
.listen((Event event) async {
|
||||
final eventChannel = event.channel!;
|
||||
await _client.chatPersistenceClient?.deleteChannels([eventChannel.cid]);
|
||||
channels[eventChannel.cid]?.dispose();
|
||||
channels.remove(eventChannel.cid)?.dispose();
|
||||
}),
|
||||
);
|
||||
}
|
||||
@@ -1713,9 +1713,9 @@ class ClientState {
|
||||
_unreadChannelsController.close();
|
||||
_totalUnreadCountController.close();
|
||||
|
||||
final channels = this.channels.values.toList();
|
||||
final channels = this.channels.keys;
|
||||
for (final channel in channels) {
|
||||
channel.dispose();
|
||||
this.channels.remove(channel)?.dispose();
|
||||
}
|
||||
_channelsController.close();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user