diff --git a/lib/src/deleted_message.dart b/lib/src/deleted_message.dart index 5921df43..bd014770 100644 --- a/lib/src/deleted_message.dart +++ b/lib/src/deleted_message.dart @@ -63,10 +63,7 @@ class DeletedMessage extends StatelessWidget { 'Message deleted', style: messageTheme.messageText.copyWith( fontStyle: FontStyle.italic, - color: (Theme.of(context).brightness == Brightness.dark - ? StreamChatTheme.of(context).colorTheme.white - : StreamChatTheme.of(context).colorTheme.black) - .withOpacity(.5), + color: messageTheme.createdAt.color, ), ), ), diff --git a/lib/src/message_widget.dart b/lib/src/message_widget.dart index 12137c64..3632fca2 100644 --- a/lib/src/message_widget.dart +++ b/lib/src/message_widget.dart @@ -280,9 +280,6 @@ class _MessageWidgetState extends State { var leftPadding = widget.showUserAvatar != DisplayWidget.gone ? avatarWidth + 8.5 : 0.5; - final isOnlyEmoji = - widget.message.text.characters.every((c) => Emoji.byChar(c) != null); - final hasFiles = widget.message.attachments?.any((element) => element.type == 'file') == true; @@ -939,9 +936,16 @@ class _MessageWidgetState extends State { ); } + final _emojis = Emoji.all(); bool get isOnlyEmoji => widget.message.text.characters.isNotEmpty && - widget.message.text.characters.every((c) => Emoji.byChar(c) != null); + widget.message.text.trim().characters.every((c) => + _emojis.firstWhere( + (Emoji emoji) => emoji.char.contains(c), + orElse: () => null, + ) != + null) && + widget.message.text.characters.length < 4; Color _getBackgroundColor() { if (hasQuotedMessage) {