fix(llc): dispose channel on deletion

This commit is contained in:
Salvatore Giordano
2021-11-26 11:46:02 +01:00
parent e9d148ef49
commit 0dd9af0906
2 changed files with 12 additions and 1 deletions
@@ -1462,6 +1462,8 @@ class ChannelClientState {
_listenChannelUpdated(); _listenChannelUpdated();
_listenChannelDeleted();
_listenMemberAdded(); _listenMemberAdded();
_listenMemberRemoved(); _listenMemberRemoved();
@@ -1563,6 +1565,12 @@ class ChannelClientState {
})); }));
} }
void _listenChannelDeleted() {
_subscriptions.add(_channel.on(EventType.channelDeleted).listen((Event e) {
_channel.dispose();
}));
}
void _listenChannelTruncated() { void _listenChannelTruncated() {
_subscriptions.add(_channel _subscriptions.add(_channel
.on(EventType.channelTruncated, EventType.notificationChannelTruncated) .on(EventType.channelTruncated, EventType.notificationChannelTruncated)
@@ -157,7 +157,10 @@ class ChannelListCoreState extends State<ChannelListCore> {
presence: widget.presence, presence: widget.presence,
memberLimit: widget.memberLimit, memberLimit: widget.memberLimit,
messageLimit: widget.messageLimit, messageLimit: widget.messageLimit,
paginationParams: PaginationParams(limit: widget.limit), paginationParams: PaginationParams(
limit: widget.limit,
offset: 0,
),
); );
/// Fetches more channels with updated pagination and updates the widget /// Fetches more channels with updated pagination and updates the widget