diff --git a/lib/src/message_list_view.dart b/lib/src/message_list_view.dart index d976896b..306e830b 100644 --- a/lib/src/message_list_view.dart +++ b/lib/src/message_list_view.dart @@ -401,7 +401,7 @@ class _MessageListViewState extends State { bottomRight: Radius.circular(16), ), borderSide: isMyMessage ? BorderSide.none : null, - showUserAvatar: DisplayWidget.show, + showUserAvatar: isMyMessage ? DisplayWidget.gone : DisplayWidget.show, messageTheme: isMyMessage ? StreamChatTheme.of(context).ownMessageTheme : StreamChatTheme.of(context).otherMessageTheme, @@ -421,8 +421,6 @@ class _MessageListViewState extends State { final userId = StreamChat.of(context).user.id; final isMyMessage = message.user.id == userId; - final isLastUser = index + 1 < messages.length && - message.user.id == messages[index + 1]?.user?.id; final isNextUser = index - 1 >= 0 && message.user.id == messages[index - 1]?.user?.id; @@ -457,9 +455,10 @@ class _MessageListViewState extends State { borderSide: isMyMessage ? BorderSide.none : null, onThreadTap: _onThreadTap, attachmentBorderRadiusGeometry: BorderRadius.circular(16), + attachmentPadding: const EdgeInsets.all(2), borderRadiusGeometry: BorderRadius.only( - topLeft: Radius.circular(isLastUser ? 2 : 16), - bottomLeft: Radius.circular(2), + topLeft: Radius.circular(16), + bottomLeft: Radius.circular(!isNextUser ? 0 : 16), topRight: Radius.circular(16), bottomRight: Radius.circular(16), ), diff --git a/lib/src/message_widget.dart b/lib/src/message_widget.dart index a833bb95..07760235 100644 --- a/lib/src/message_widget.dart +++ b/lib/src/message_widget.dart @@ -136,7 +136,10 @@ class MessageWidget extends StatefulWidget { Map customAttachmentBuilders, this.readList, this.padding, - this.textPadding = const EdgeInsets.all(8.0), + this.textPadding = const EdgeInsets.symmetric( + horizontal: 16.0, + vertical: 8.0, + ), this.attachmentPadding = EdgeInsets.zero, this.allRead = false, }) : attachmentBuilders = { @@ -373,7 +376,10 @@ class _MessageWidgetState extends State { if (widget.showUsername) TextSpan( text: widget.message.user.name, - style: TextStyle(fontWeight: FontWeight.bold), + style: TextStyle( + fontWeight: FontWeight.bold, + color: widget.messageTheme.createdAt.color + .withOpacity(1)), ), if (widget.message.createdAt != null && widget.showTimestamp) TextSpan( @@ -550,23 +556,26 @@ class _MessageWidgetState extends State { ), child: Padding( padding: widget.attachmentPadding, - child: Transform( - transform: Matrix4.rotationY(widget.reverse ? pi : 0), - alignment: Alignment.center, - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.end, - children: [ - getFailedMessageWidget( - context, - padding: const EdgeInsets.all(8.0), - ), - attachmentBuilder( - context, - widget.message, - attachment, - ), - ], + child: ClipRRect( + borderRadius: BorderRadius.circular(6), + child: Transform( + transform: Matrix4.rotationY(widget.reverse ? pi : 0), + alignment: Alignment.center, + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + getFailedMessageWidget( + context, + padding: const EdgeInsets.all(8.0), + ), + attachmentBuilder( + context, + widget.message, + attachment, + ), + ], + ), ), ), ),