From ffd26a4574151b3738f9b07fd50f741d2da86ab7 Mon Sep 17 00:00:00 2001 From: Leandro Borges Ferreira Date: Wed, 15 Feb 2023 14:27:21 +0100 Subject: [PATCH] Removing message builder --- .../stream_channel_list_tile.dart | 66 +++++++++---------- 1 file changed, 30 insertions(+), 36 deletions(-) diff --git a/packages/stream_chat_flutter/lib/src/scroll_view/channel_scroll_view/stream_channel_list_tile.dart b/packages/stream_chat_flutter/lib/src/scroll_view/channel_scroll_view/stream_channel_list_tile.dart index a17a2eaf..a89b1a29 100644 --- a/packages/stream_chat_flutter/lib/src/scroll_view/channel_scroll_view/stream_channel_list_tile.dart +++ b/packages/stream_chat_flutter/lib/src/scroll_view/channel_scroll_view/stream_channel_list_tile.dart @@ -211,45 +211,39 @@ class StreamChannelListTile extends StatelessWidget { child: subtitle, ), ), - BetterStreamBuilder>( - stream: channelState.messagesStream, - initialData: channelState.messages, - comparator: const ListEquality().equals, - builder: (context, messages) { - return BetterStreamBuilder>( - stream: channelState.readStream, - initialData: channelState.read, - builder: (context, reads) { - final lastMessage = messages.lastWhereOrNull( - (m) => !m.shadowed && !m.isDeleted, - ); + BetterStreamBuilder>( + stream: channelState.readStream, + initialData: channelState.read, + builder: (context, reads) { + final lastMessage = channelState.messages.lastWhereOrNull( + (m) => !m.shadowed && !m.isDeleted, + ); - if (lastMessage == null || - (lastMessage.user?.id != currentUser.id)) { - return const Offstage(); - } + if (lastMessage == null || + (lastMessage.user?.id != currentUser.id)) { + return const Offstage(); + } - final isLastMessageRead = channelState.read - .where( - (readData) => readData.user.id != currentUser.id, - ) - .any((readData) => - readData.lastRead - .isAfter(lastMessage.createdAt) || - readData.lastRead - .isAtSameMomentAs(lastMessage.createdAt)); + final isLastMessageRead = channelState.read + .where( + (readData) => readData.user.id != currentUser.id, + ) + .any((readData) => + readData.lastRead.isAfter(lastMessage.createdAt) || + readData.lastRead + .isAtSameMomentAs(lastMessage.createdAt)); - return Padding( - padding: const EdgeInsets.only(right: 4), - child: sendingIndicatorBuilder?.call( - context, lastMessage) ?? - StreamSendingIndicator( - message: lastMessage, - size: channelPreviewTheme.indicatorIconSize, - isMessageRead: isLastMessageRead, - ), - ); - }, + return Padding( + padding: const EdgeInsets.only(right: 4), + child: sendingIndicatorBuilder?.call( + context, + lastMessage, + ) ?? + StreamSendingIndicator( + message: lastMessage, + size: channelPreviewTheme.indicatorIconSize, + isMessageRead: isLastMessageRead, + ), ); }, ),