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