From a1fc65aba24f2f7b12d6fee942e121e11e075203 Mon Sep 17 00:00:00 2001 From: Freek van de Ven Date: Thu, 20 Feb 2025 14:14:35 +0100 Subject: [PATCH] feat: add previousMessage to the messageThemeResolver --- packages/flutter_chat/lib/src/config/chat_options.dart | 2 ++ .../screens/chat_detail/widgets/default_message_builder.dart | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/flutter_chat/lib/src/config/chat_options.dart b/packages/flutter_chat/lib/src/config/chat_options.dart index f1daedd..7cf3a51 100644 --- a/packages/flutter_chat/lib/src/config/chat_options.dart +++ b/packages/flutter_chat/lib/src/config/chat_options.dart @@ -106,6 +106,7 @@ typedef SenderTitleResolver = String? Function(UserModel? user); typedef MessageThemeResolver = MessageTheme? Function( BuildContext context, MessageModel message, + MessageModel? previousMessage, UserModel? sender, ); @@ -246,6 +247,7 @@ class MessageTheme { MessageTheme? _defaultMessageThemeResolver( BuildContext context, MessageModel message, + MessageModel? previousMessage, UserModel? sender, ) => null; diff --git a/packages/flutter_chat/lib/src/screens/chat_detail/widgets/default_message_builder.dart b/packages/flutter_chat/lib/src/screens/chat_detail/widgets/default_message_builder.dart index da0576d..dd55e24 100644 --- a/packages/flutter_chat/lib/src/screens/chat_detail/widgets/default_message_builder.dart +++ b/packages/flutter_chat/lib/src/screens/chat_detail/widgets/default_message_builder.dart @@ -53,10 +53,11 @@ class DefaultChatMessageBuilder extends StatelessWidget { required BuildContext context, required ChatOptions options, required MessageModel message, + required MessageModel? previousMessage, required UserModel? user, }) => [ - options.messageThemeResolver(context, message, user), + options.messageThemeResolver(context, message, previousMessage, user), options.messageTheme, MessageTheme.fromTheme(Theme.of(context)), ].whereType().reduce((value, element) => value | element); @@ -71,6 +72,7 @@ class DefaultChatMessageBuilder extends StatelessWidget { context: context, options: options, message: message, + previousMessage: previousMessage, user: sender, );