diff --git a/packages/stream_chat_flutter_core/lib/src/message_list_core.dart b/packages/stream_chat_flutter_core/lib/src/message_list_core.dart index 732ac3e6..22847f88 100644 --- a/packages/stream_chat_flutter_core/lib/src/message_list_core.dart +++ b/packages/stream_chat_flutter_core/lib/src/message_list_core.dart @@ -178,10 +178,10 @@ class MessageListCoreState extends State { final newStreamChannel = StreamChannel.of(context); if (newStreamChannel != _streamChannel) { - _streamChannel = newStreamChannel; - if (_isThreadConversation) { + if (_streamChannel == null /*only first time*/ && _isThreadConversation) { _streamChannel!.getReplies(widget.parentMessage!.id); } + _streamChannel = newStreamChannel; } super.didChangeDependencies(); @@ -194,6 +194,12 @@ class MessageListCoreState extends State { if (widget.messageListController != oldWidget.messageListController) { _setupController(); } + + if (widget.parentMessage?.id != widget.parentMessage?.id) { + if (_isThreadConversation) { + _streamChannel!.getReplies(widget.parentMessage!.id); + } + } } @override