Message can be deleted when selected

This commit is contained in:
Benoit Martins 2024-11-15 09:51:00 +01:00
parent d1489d2287
commit 94e387dac2
2 changed files with 13 additions and 0 deletions

View file

@ -923,6 +923,7 @@ struct ConversationFragment: View {
Divider()
Button {
conversationViewModel.deleteMessage()
} label: {
HStack {
Text("menu_delete_selected_item")

View file

@ -2260,6 +2260,18 @@ class ConversationViewModel: ObservableObject {
func getAttachmentIndex(attachment: Attachment) -> Int {
return self.attachments.firstIndex(where: {$0.id == attachment.id}) ?? 0
}
func deleteMessage() {
if self.displayedConversation != nil && selectedMessage != nil && selectedMessage!.eventModel.eventLog.chatMessage != nil {
coreContext.doOnCoreQueue { _ in
self.displayedConversation!.chatRoom.deleteMessage(message: self.selectedMessage!.eventModel.eventLog.chatMessage!)
DispatchQueue.main.async {
self.conversationMessagesSection[0].rows.remove(at: self.conversationMessagesSection[0].rows.firstIndex(of: self.selectedMessage!)!)
self.selectedMessage = nil
}
}
}
}
}
// swiftlint:enable line_length
// swiftlint:enable type_body_length