mirror of
https://github.com/Iconica-Development/flutter_chat.git
synced 2025-05-18 18:33:49 +02:00
fix: show names with correct padding if an indicator is used
This commit is contained in:
parent
a48806fe98
commit
52562746b6
5 changed files with 23 additions and 5 deletions
|
@ -1,3 +1,7 @@
|
|||
## 5.1.2
|
||||
- Added correct padding inbetween time indicators and names
|
||||
- Show names if a new day occurs and an indicator is shown
|
||||
|
||||
## 5.1.1
|
||||
- Expose default indicator builder from the indicator options
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
name: chat_repository_interface
|
||||
description: "The interface for a chat repository"
|
||||
version: 5.1.1
|
||||
version: 5.1.2
|
||||
homepage: "https://github.com/Iconica-Development"
|
||||
|
||||
publish_to: https://forgejo.internal.iconica.nl/api/packages/internal/pub/
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
name: firebase_chat_repository
|
||||
description: "Firebase repository implementation for the chat domain repository interface"
|
||||
version: 5.1.1
|
||||
version: 5.1.2
|
||||
homepage: "https://github.com/Iconica-Development"
|
||||
|
||||
publish_to: https://forgejo.internal.iconica.nl/api/packages/internal/pub/
|
||||
|
|
|
@ -97,10 +97,17 @@ class DefaultChatMessageBuilder extends StatelessWidget {
|
|||
var isSameSender = previousMessage != null &&
|
||||
previousMessage?.senderId == message.senderId;
|
||||
|
||||
var hasPreviousIndicator = options.timeIndicatorOptions.sectionCheck(
|
||||
context,
|
||||
previousMessage,
|
||||
message,
|
||||
);
|
||||
|
||||
var isMessageFromSelf = message.senderId == userId;
|
||||
|
||||
var chatMessage = _ChatMessageBubble(
|
||||
isSameSender: isSameSender,
|
||||
hasPreviousIndicator: hasPreviousIndicator,
|
||||
isMessageFromSelf: isMessageFromSelf,
|
||||
previousMessage: previousMessage,
|
||||
message: message,
|
||||
|
@ -143,6 +150,7 @@ class DefaultChatMessageBuilder extends StatelessWidget {
|
|||
class _ChatMessageBubble extends StatelessWidget {
|
||||
const _ChatMessageBubble({
|
||||
required this.isSameSender,
|
||||
required this.hasPreviousIndicator,
|
||||
required this.isMessageFromSelf,
|
||||
required this.message,
|
||||
required this.previousMessage,
|
||||
|
@ -154,6 +162,7 @@ class _ChatMessageBubble extends StatelessWidget {
|
|||
});
|
||||
|
||||
final bool isSameSender;
|
||||
final bool hasPreviousIndicator;
|
||||
final bool isMessageFromSelf;
|
||||
final MessageModel message;
|
||||
final MessageModel? previousMessage;
|
||||
|
@ -211,14 +220,19 @@ class _ChatMessageBubble extends StatelessWidget {
|
|||
],
|
||||
);
|
||||
|
||||
var showName =
|
||||
messageTheme.showName ?? (!isSameSender || hasPreviousIndicator);
|
||||
|
||||
var isNewSection = hasPreviousIndicator || showName;
|
||||
|
||||
return Expanded(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
if (messageTheme.showName ?? !isSameSender) ...[
|
||||
if (isNewSection) ...[
|
||||
SizedBox(height: options.spacing.chatBetweenMessagesPadding),
|
||||
senderTitleText,
|
||||
],
|
||||
if (showName) senderTitleText,
|
||||
const SizedBox(height: 4),
|
||||
DefaultChatMessageContainer(
|
||||
backgroundColor: messageTheme.backgroundColor!,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
name: flutter_chat
|
||||
description: "User story of the chat domain for quick integration into flutter apps"
|
||||
version: 5.1.1
|
||||
version: 5.1.2
|
||||
publish_to: https://forgejo.internal.iconica.nl/api/packages/internal/pub/
|
||||
|
||||
environment:
|
||||
|
|
Loading…
Reference in a new issue