From 7e8cd07e1e3ecb87bfee8edd850617c850daaf5e Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 10 Jul 2019 16:32:44 +0200 Subject: [PATCH] Do not send edition if text is identical --- .../home/room/detail/RoomDetailViewModel.kt | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt b/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt index 9c96677b..708a705c 100644 --- a/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt +++ b/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt @@ -232,8 +232,17 @@ class RoomDetailViewModel @AssistedInject constructor(@Assisted initialState: Ro } } SendMode.EDIT -> { - room.editTextMessage(state.selectedEvent?.root?.eventId - ?: "", action.text, action.autoMarkdown) + val messageContent: MessageContent? = + state.selectedEvent?.annotations?.editSummary?.aggregatedContent.toModel() + ?: state.selectedEvent?.root?.getClearContent().toModel() + val nonFormattedBody = messageContent?.body ?: "" + + if (nonFormattedBody != action.text) { + room.editTextMessage(state.selectedEvent?.root?.eventId + ?: "", action.text, action.autoMarkdown) + } else { + Timber.w("Same message content, do not send edition") + } setState { copy( sendMode = SendMode.REGULAR, @@ -244,7 +253,7 @@ class RoomDetailViewModel @AssistedInject constructor(@Assisted initialState: Ro } SendMode.QUOTE -> { val messageContent: MessageContent? = - state.selectedEvent?.annotations?.editSummary?.aggregatedContent?.toModel() + state.selectedEvent?.annotations?.editSummary?.aggregatedContent.toModel() ?: state.selectedEvent?.root?.getClearContent().toModel() val textMsg = messageContent?.body