diff --git a/packages/stream_chat_flutter/CHANGELOG.md b/packages/stream_chat_flutter/CHANGELOG.md index 66c196d65..d6b7868e5 100644 --- a/packages/stream_chat_flutter/CHANGELOG.md +++ b/packages/stream_chat_flutter/CHANGELOG.md @@ -2,6 +2,7 @@ 🐞 Fixed +- Fixed users with `sendReply` capability unable to send replies in threads. - Fixed delete/flag message dialogs executing action when dialog is dismissed without confirmation. ## Upcoming diff --git a/packages/stream_chat_flutter/lib/src/message_input/stream_message_input.dart b/packages/stream_chat_flutter/lib/src/message_input/stream_message_input.dart index de88469d3..c76604860 100644 --- a/packages/stream_chat_flutter/lib/src/message_input/stream_message_input.dart +++ b/packages/stream_chat_flutter/lib/src/message_input/stream_message_input.dart @@ -619,6 +619,12 @@ class StreamMessageInputState extends State Widget build(BuildContext context) { bool canSendOrUpdateMessage(List capabilities) { var result = capabilities.contains(ChannelCapability.sendMessage); + + final insideThread = _effectiveController.message.parentId != null; + if (insideThread) { + result |= capabilities.contains(ChannelCapability.sendReply); + } + if (_isEditing) { result |= capabilities.contains(ChannelCapability.updateOwnMessage); result |= capabilities.contains(ChannelCapability.updateAnyMessage);