From 59c8dca60ea3b93158d209153141cdcee0ec419c Mon Sep 17 00:00:00 2001 From: Deven Joshi Date: Thu, 25 Feb 2021 14:55:15 +0530 Subject: [PATCH 1/2] fix: Delete now deletes a single image --- .../lib/src/image_actions_modal.dart | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/packages/stream_chat_flutter/lib/src/image_actions_modal.dart b/packages/stream_chat_flutter/lib/src/image_actions_modal.dart index 3c4a7c73..7d004d37 100644 --- a/packages/stream_chat_flutter/lib/src/image_actions_modal.dart +++ b/packages/stream_chat_flutter/lib/src/image_actions_modal.dart @@ -103,11 +103,20 @@ class ImageActionsModal extends StatelessWidget { color: StreamChatTheme.of(context).colorTheme.accentRed, ), () { - Navigator.pop(context); - Navigator.pop(context); - StreamChannel.of(context) - .channel - .deleteMessage(message); + if (message.attachments.length > 1 || + message.text.isNotEmpty) { + var channel = StreamChannel.of(context).channel; + channel.updateMessage( + message..attachments.removeAt(currentIndex)); + Navigator.pop(context); + Navigator.pop(context); + } else { + var channel = StreamChannel.of(context).channel; + channel.deleteMessage(message).then((value) { + Navigator.pop(context); + Navigator.pop(context); + }); + } }, color: StreamChatTheme.of(context).colorTheme.accentRed, ), From d030a97167ac3727f9d7ae9549967cc23f111c57 Mon Sep 17 00:00:00 2001 From: Sahil Kumar Date: Thu, 25 Feb 2021 19:32:05 +0530 Subject: [PATCH 2/2] [UI-Kit -> ImageActionsModal] Fix delete image Signed-off-by: Sahil Kumar --- .../lib/src/image_actions_modal.dart | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/stream_chat_flutter/lib/src/image_actions_modal.dart b/packages/stream_chat_flutter/lib/src/image_actions_modal.dart index 7d004d37..90d73064 100644 --- a/packages/stream_chat_flutter/lib/src/image_actions_modal.dart +++ b/packages/stream_chat_flutter/lib/src/image_actions_modal.dart @@ -103,15 +103,20 @@ class ImageActionsModal extends StatelessWidget { color: StreamChatTheme.of(context).colorTheme.accentRed, ), () { + final channel = StreamChannel.of(context).channel; if (message.attachments.length > 1 || message.text.isNotEmpty) { - var channel = StreamChannel.of(context).channel; - channel.updateMessage( - message..attachments.removeAt(currentIndex)); + final remainingAttachments = [...message.attachments] + ..removeAt(currentIndex); + channel.updateMessage(message.copyWith( + attachments: remainingAttachments.map((e) { + return e.copyWith( + uploadState: UploadState.success()); + }).toList(), + )); Navigator.pop(context); Navigator.pop(context); } else { - var channel = StreamChannel.of(context).channel; channel.deleteMessage(message).then((value) { Navigator.pop(context); Navigator.pop(context);