🐛 Make sure the send read event triggered before dispose chat message controller
This commit is contained in:
parent
5468fc0748
commit
c8c455bb57
@ -514,6 +514,11 @@ class ChatMessageController extends ChangeNotifier {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_readEventDebounce = Timer(const Duration(milliseconds: 500), () {
|
_readEventDebounce = Timer(const Duration(milliseconds: 500), () {
|
||||||
|
_sendReadEvent();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
void _sendReadEvent() {
|
||||||
_ws.conn?.sink.add(jsonEncode(
|
_ws.conn?.sink.add(jsonEncode(
|
||||||
WebSocketPackage(
|
WebSocketPackage(
|
||||||
method: 'events.read',
|
method: 'events.read',
|
||||||
@ -525,12 +530,14 @@ class ChatMessageController extends ChangeNotifier {
|
|||||||
).toJson(),
|
).toJson(),
|
||||||
));
|
));
|
||||||
log('[Messaging] Send read event request: $_readEventAnchor');
|
log('[Messaging] Send read event request: $_readEventAnchor');
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void dispose() {
|
void dispose() {
|
||||||
_wsSubscription?.cancel();
|
_wsSubscription?.cancel();
|
||||||
|
if (_readEventDebounce?.isActive ?? false) {
|
||||||
|
_sendReadEvent();
|
||||||
|
}
|
||||||
_readEventDebounce?.cancel();
|
_readEventDebounce?.cancel();
|
||||||
super.dispose();
|
super.dispose();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user