diff --git a/CHANGELOG.md b/CHANGELOG.md index 932ed7c..79413e6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -## 0.4.0 - October 27 2023 +## 0.4.0 - November 6 2023 - Show amount of unread messages per chat - More intuitive chat UI diff --git a/packages/flutter_community_chat_view/lib/src/components/chat_detail_row.dart b/packages/flutter_community_chat_view/lib/src/components/chat_detail_row.dart index 8178c18..cf14149 100644 --- a/packages/flutter_community_chat_view/lib/src/components/chat_detail_row.dart +++ b/packages/flutter_community_chat_view/lib/src/components/chat_detail_row.dart @@ -10,12 +10,14 @@ import 'package:flutter_community_chat_view/src/services/date_formatter.dart'; class ChatDetailRow extends StatefulWidget { const ChatDetailRow({ + required this.translations, required this.isFirstMessage, required this.message, required this.userAvatarBuilder, super.key, }); + final ChatTranslations translations; final bool isFirstMessage; final ChatMessageModel message; final UserAvatarBuilder userAvatarBuilder; @@ -62,7 +64,7 @@ class _ChatDetailRowState extends State { children: [ Text( widget.message.sender.fullName?.toUpperCase() ?? - '', + widget.translations.anonymousUser, style: const TextStyle( fontSize: 14, fontWeight: FontWeight.w500, diff --git a/packages/flutter_community_chat_view/lib/src/config/chat_translations.dart b/packages/flutter_community_chat_view/lib/src/config/chat_translations.dart index 750fde3..c353391 100644 --- a/packages/flutter_community_chat_view/lib/src/config/chat_translations.dart +++ b/packages/flutter_community_chat_view/lib/src/config/chat_translations.dart @@ -20,6 +20,7 @@ class ChatTranslations { this.deleteChatModalCancel = 'Cancel', this.deleteChatModalConfirm = 'Delete', this.noUsersFound = 'No users found', + this.anonymousUser = 'Anonymous user', }); final String chatsTitle; @@ -37,4 +38,7 @@ class ChatTranslations { final String deleteChatModalCancel; final String deleteChatModalConfirm; final String noUsersFound; + + /// Shown when the user has no name + final String anonymousUser; } diff --git a/packages/flutter_community_chat_view/lib/src/screens/chat_detail_screen.dart b/packages/flutter_community_chat_view/lib/src/screens/chat_detail_screen.dart index 7aa660f..7301f1a 100644 --- a/packages/flutter_community_chat_view/lib/src/screens/chat_detail_screen.dart +++ b/packages/flutter_community_chat_view/lib/src/screens/chat_detail_screen.dart @@ -136,7 +136,7 @@ class _ChatDetailScreenState extends State { ? (widget.chat! as PersonalChatModel) .user .fullName ?? - '' + widget.translations.anonymousUser : '', style: const TextStyle(fontSize: 18), ), @@ -161,6 +161,7 @@ class _ChatDetailScreenState extends State { lastMessage.sender.id != message.sender.id; messageWidgets.add( ChatDetailRow( + translations: widget.translations, message: message, isFirstMessage: isFirstMessage, userAvatarBuilder: widget.options.userAvatarBuilder, diff --git a/packages/flutter_community_chat_view/lib/src/screens/chat_screen.dart b/packages/flutter_community_chat_view/lib/src/screens/chat_screen.dart index b04ef38..9174ff9 100644 --- a/packages/flutter_community_chat_view/lib/src/screens/chat_screen.dart +++ b/packages/flutter_community_chat_view/lib/src/screens/chat_screen.dart @@ -129,7 +129,8 @@ class _ChatScreenState extends State { chat.user, 40.0, ), - title: chat.user.fullName ?? '', + title: chat.user.fullName ?? + translations.anonymousUser, subTitle: chat.lastMessage != null ? chat.lastMessage is ChatTextMessageModel diff --git a/packages/flutter_community_chat_view/lib/src/screens/new_chat_screen.dart b/packages/flutter_community_chat_view/lib/src/screens/new_chat_screen.dart index c8772e7..ead3c6c 100644 --- a/packages/flutter_community_chat_view/lib/src/screens/new_chat_screen.dart +++ b/packages/flutter_community_chat_view/lib/src/screens/new_chat_screen.dart @@ -90,7 +90,8 @@ class _NewChatScreenState extends State { user, 40.0, ), - title: user.fullName ?? '', + title: + user.fullName ?? widget.translations.anonymousUser, ), ), onTap: () => widget.onPressCreateChat(user),