From bb642842f9bfa039eaea8c7bb39402e31291acdd Mon Sep 17 00:00:00 2001 From: Salvatore Giordano Date: Wed, 23 Jun 2021 12:22:17 +0200 Subject: [PATCH 1/2] fix message widget not update when message is updated --- .../lib/src/message_widget.dart | 34 +++++++++---------- 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/packages/stream_chat_flutter/lib/src/message_widget.dart b/packages/stream_chat_flutter/lib/src/message_widget.dart index 753f201c..a976547f 100644 --- a/packages/stream_chat_flutter/lib/src/message_widget.dart +++ b/packages/stream_chat_flutter/lib/src/message_widget.dart @@ -413,39 +413,37 @@ class _MessageWidgetState extends State bool get showTimeStamp => widget.showTimestamp; - late final bool isMessageRead = widget.readList?.isNotEmpty == true; + bool get isMessageRead => widget.readList?.isNotEmpty == true; bool get showInChannel => widget.showInChannelIndicator; bool get hasQuotedMessage => widget.message.quotedMessage != null; - late final bool isSendFailed = - widget.message.status == MessageSendingStatus.failed; + bool get isSendFailed => widget.message.status == MessageSendingStatus.failed; - late final bool isUpdateFailed = + bool get isUpdateFailed => widget.message.status == MessageSendingStatus.failed_update; - late final bool isDeleteFailed = + bool get isDeleteFailed => widget.message.status == MessageSendingStatus.failed_delete; - late final bool isFailedState = - isSendFailed || isUpdateFailed || isDeleteFailed; + bool get isFailedState => isSendFailed || isUpdateFailed || isDeleteFailed; - late final bool isGiphy = + bool get isGiphy => widget.message.attachments.any((element) => element.type == 'giphy') == - true; - - late final bool isOnlyEmoji = widget.message.text?.isOnlyEmoji == true; - - late final bool hasNonUrlAttachments = widget.message.attachments - .where((it) => it.ogScrapeUrl == null) - .isNotEmpty == true; - late final bool hasUrlAttachments = + bool get isOnlyEmoji => widget.message.text?.isOnlyEmoji == true; + + bool get hasNonUrlAttachments => widget.message.attachments + .where((it) => it.ogScrapeUrl == null) + .isNotEmpty; + + bool get hasUrlAttachments => widget.message.attachments.any((it) => it.ogScrapeUrl != null) == true; - late final bool showBottomRow = showThreadReplyIndicator || + bool get showBottomRow => + showThreadReplyIndicator || showUsername || showTimeStamp || showInChannel || @@ -1177,7 +1175,7 @@ class _MessageWidgetState extends State ); } - late final bool isPinned = widget.message.pinned; + bool get isPinned => widget.message.pinned; Color? _getBackgroundColor() { if (hasQuotedMessage) { From 151054b2c662922238fc8258b8196de695c93245 Mon Sep 17 00:00:00 2001 From: Salvatore Giordano Date: Wed, 23 Jun 2021 12:30:10 +0200 Subject: [PATCH 2/2] null check --- packages/stream_chat_flutter/lib/src/message_input.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/stream_chat_flutter/lib/src/message_input.dart b/packages/stream_chat_flutter/lib/src/message_input.dart index 962d237b..39211116 100644 --- a/packages/stream_chat_flutter/lib/src/message_input.dart +++ b/packages/stream_chat_flutter/lib/src/message_input.dart @@ -798,7 +798,7 @@ class MessageInputState extends State { setState(() { _commandEnabled = true; }); - _commandsOverlay!.remove(); + _commandsOverlay?.remove(); _commandsOverlay = null; } else { _commandsOverlay = _buildCommandsOverlayEntry();