From 9898e88081b3aa4ba5af71fd10d8e8b53f9a7603 Mon Sep 17 00:00:00 2001 From: Salvatore Giordano Date: Fri, 1 Oct 2021 13:10:29 +0200 Subject: [PATCH 1/2] fix(ui): fix floating date stream subscription --- packages/stream_chat_flutter/lib/src/message_list_view.dart | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/packages/stream_chat_flutter/lib/src/message_list_view.dart b/packages/stream_chat_flutter/lib/src/message_list_view.dart index e67f00dd..42285475 100644 --- a/packages/stream_chat_flutter/lib/src/message_list_view.dart +++ b/packages/stream_chat_flutter/lib/src/message_list_view.dart @@ -293,7 +293,6 @@ class _MessageListViewState extends State { void Function(Message)? _onThreadTap; bool _showScrollToBottom = false; late final ItemPositionsListener _itemPositionListener; - late final Stream> _itemPositionStream; int? _messageListLength; StreamChannelState? streamChannel; late StreamChatThemeData _streamTheme; @@ -665,7 +664,8 @@ class _MessageListViewState extends State { right: 0, child: BetterStreamBuilder>( initialData: _itemPositionListener.itemPositions.value, - stream: _itemPositionStream, + stream: _valueListenableToStreamAdapter( + _itemPositionListener.itemPositions), comparator: (a, b) { if (a == null || b == null) { return false; @@ -1194,8 +1194,6 @@ class _MessageListViewState extends State { _scrollController = widget.scrollController ?? ItemScrollController(); _itemPositionListener = widget.itemPositionListener ?? ItemPositionsListener.create(); - _itemPositionStream = - _valueListenableToStreamAdapter(_itemPositionListener.itemPositions); _getOnThreadTap(); super.initState(); From 3139b9d51e6946818c3105f28b6717df1ef8fd96 Mon Sep 17 00:00:00 2001 From: Salvatore Giordano Date: Fri, 1 Oct 2021 13:11:22 +0200 Subject: [PATCH 2/2] chore(ui): update changelog --- packages/stream_chat_flutter/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/stream_chat_flutter/CHANGELOG.md b/packages/stream_chat_flutter/CHANGELOG.md index e68c7b9b..9e4f2744 100644 --- a/packages/stream_chat_flutter/CHANGELOG.md +++ b/packages/stream_chat_flutter/CHANGELOG.md @@ -3,6 +3,7 @@ 🐞 Fixed -[[#687]](https://github.com/GetStream/stream-chat-flutter/issues/687): Fix Users losing their place in the conversation after replying in threads. +- Fixed floating date stream subscription causing "Bad state: stream has already been listened.” error. ✅ Added