add update message
This commit is contained in:
@@ -106,7 +106,6 @@ class _ChannelListViewState extends State<ChannelListView> {
|
||||
final streamChat = StreamChat.of(context);
|
||||
return RefreshIndicator(
|
||||
onRefresh: () async {
|
||||
streamChat.clearChannels();
|
||||
return streamChat.queryChannels(
|
||||
filter: widget.filter,
|
||||
sortOptions: widget.sort,
|
||||
|
||||
@@ -664,7 +664,10 @@ class _MessageInputState extends State<MessageInput> {
|
||||
sendingFuture = channel.sendMessage(message);
|
||||
}
|
||||
|
||||
sendingFuture = StreamChat.of(context).client.updateMessage(message);
|
||||
sendingFuture = StreamChat.of(context).client.updateMessage(
|
||||
message,
|
||||
channel.cid,
|
||||
);
|
||||
} else {
|
||||
message = Message(
|
||||
parentId: widget.parentMessage?.id,
|
||||
|
||||
@@ -161,7 +161,8 @@ class _MessageWidgetState extends State<MessageWidget>
|
||||
),
|
||||
),
|
||||
if (_isMyMessage &&
|
||||
widget.message.status == MessageSendingStatus.SENDING)
|
||||
(widget.message.status == MessageSendingStatus.SENDING ||
|
||||
widget.message.status == MessageSendingStatus.UPDATING))
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 1.0,
|
||||
@@ -177,7 +178,8 @@ class _MessageWidgetState extends State<MessageWidget>
|
||||
),
|
||||
),
|
||||
if (_isMyMessage &&
|
||||
widget.message.status == MessageSendingStatus.FAILED)
|
||||
(widget.message.status == MessageSendingStatus.FAILED ||
|
||||
widget.message.status == MessageSendingStatus.FAILED_UPDATE))
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 1.0,
|
||||
@@ -372,8 +374,16 @@ class _MessageWidgetState extends State<MessageWidget>
|
||||
),
|
||||
),
|
||||
onTap: () {
|
||||
final channel = StreamChannel.of(context).channel;
|
||||
if (widget.message.status == MessageSendingStatus.FAILED) {
|
||||
StreamChannel.of(context).channel.sendMessage(widget.message);
|
||||
channel.sendMessage(widget.message);
|
||||
return;
|
||||
}
|
||||
if (widget.message.status == MessageSendingStatus.FAILED_UPDATE) {
|
||||
StreamChat.of(context).client.updateMessage(
|
||||
widget.message,
|
||||
channel.cid,
|
||||
);
|
||||
return;
|
||||
}
|
||||
},
|
||||
@@ -466,6 +476,14 @@ class _MessageWidgetState extends State<MessageWidget>
|
||||
fontSize: 11,
|
||||
),
|
||||
),
|
||||
if (widget.message.status == MessageSendingStatus.FAILED_UPDATE)
|
||||
Text(
|
||||
'MESSAGE UPDATE FAILED · CLICK TO TRY AGAIN',
|
||||
style: _messageTheme.messageText.copyWith(
|
||||
color: Colors.black.withOpacity(.5),
|
||||
fontSize: 11,
|
||||
),
|
||||
),
|
||||
MarkdownBody(
|
||||
data: text,
|
||||
onTapLink: (link) {
|
||||
@@ -989,7 +1007,8 @@ class _MessageWidgetState extends State<MessageWidget>
|
||||
topRight: Radius.circular((_isMyMessage && rectBorders) ? 2 : 16),
|
||||
bottomRight: Radius.circular(_isMyMessage ? 2 : 16),
|
||||
),
|
||||
color: widget.message.status == MessageSendingStatus.FAILED
|
||||
color: (widget.message.status == MessageSendingStatus.FAILED ||
|
||||
widget.message.status == MessageSendingStatus.FAILED_UPDATE)
|
||||
? Color(0xffd0021B).withAlpha(26)
|
||||
: _messageTheme.messageBackgroundColor,
|
||||
);
|
||||
|
||||
@@ -214,11 +214,6 @@ class StreamChatState extends State<StreamChat> {
|
||||
}
|
||||
}
|
||||
|
||||
/// Clear the current channel list
|
||||
void clearChannels() {
|
||||
channels.clear();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
widget.client.dispose();
|
||||
|
||||
Reference in New Issue
Block a user