move messagewidget in the builder

This commit is contained in:
Salvatore Giordano
2021-06-25 14:18:56 +02:00
parent 155706c8fd
commit 1c3dbb1595
2 changed files with 5 additions and 6 deletions
@@ -93,6 +93,7 @@ class ChannelPage extends StatelessWidget {
BuildContext context, BuildContext context,
MessageDetails details, MessageDetails details,
List<Message> messages, List<Message> messages,
MessageWidget _,
) { ) {
final message = details.message; final message = details.message;
final isCurrentUser = StreamChat.of(context).user!.id == message.user!.id; final isCurrentUser = StreamChat.of(context).user!.id == message.user!.id;
@@ -19,10 +19,13 @@ import 'package:stream_chat_flutter_core/stream_chat_flutter_core.dart';
import 'package:visibility_detector/visibility_detector.dart'; import 'package:visibility_detector/visibility_detector.dart';
/// Widget builder for message /// Widget builder for message
/// [defaultMessageWidget] is the default [MessageWidget] configuration
/// Use [defaultMessageWidget.copyWith] to easily customize it
typedef MessageBuilder = Widget Function( typedef MessageBuilder = Widget Function(
BuildContext, BuildContext,
MessageDetails, MessageDetails,
List<Message>, List<Message>,
MessageWidget defaultMessageWidget,
); );
/// Widget builder for parent message /// Widget builder for parent message
@@ -63,7 +66,6 @@ class MessageDetails {
this.message, this.message,
List<Message> messages, List<Message> messages,
this.index, this.index,
this.defaultMessageWidget,
) { ) {
isMyMessage = message.user?.id == currentUserId; isMyMessage = message.user?.id == currentUserId;
isLastUser = index + 1 < messages.length && isLastUser = index + 1 < messages.length &&
@@ -72,10 +74,6 @@ class MessageDetails {
index - 1 >= 0 && message.user!.id == messages[index - 1].user?.id; index - 1 >= 0 && message.user!.id == messages[index - 1].user?.id;
} }
/// Default [MessageWidget] configuration
/// use [defaultMessageWidget.copyWith] to easily customize it
final MessageWidget defaultMessageWidget;
/// True if the message belongs to the current user /// True if the message belongs to the current user
late final bool isMyMessage; late final bool isMyMessage;
@@ -1082,9 +1080,9 @@ class _MessageListViewState extends State<MessageListView> {
message, message,
messages, messages,
index, index,
messageWidget as MessageWidget,
), ),
messages, messages,
messageWidget as MessageWidget,
); );
} }