From 7528d4981e0e26a042226be1fd6a878b1afc5059 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Tue, 22 Feb 2022 13:28:59 +0100 Subject: [PATCH] Fixed voice recording playback not stopped if record is deleted during playback or when sending message --- .../main/chat/viewmodels/ChatMessageSendingViewModel.kt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessageSendingViewModel.kt b/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessageSendingViewModel.kt index c9590fd08..72a5bec85 100644 --- a/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessageSendingViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessageSendingViewModel.kt @@ -201,6 +201,10 @@ class ChatMessageSendingViewModel(private val chatRoom: ChatRoom) : ViewModel() } fun sendMessage() { + if (!isPlayerClosed()) { + stopVoiceRecordPlayer() + } + val pendingMessageToReplyTo = pendingChatMessageToReplyTo.value val message: ChatMessage = if (isPendingAnswer.value == true && pendingMessageToReplyTo != null) chatRoom.createReplyMessage(pendingMessageToReplyTo.chatMessage) @@ -381,6 +385,10 @@ class ChatMessageSendingViewModel(private val chatRoom: ChatRoom) : ViewModel() isPendingVoiceRecord.value = false isVoiceRecording.value = false sendMessageEnabled.value = textToSend.value?.isNotEmpty() == true || attachments.value?.isNotEmpty() == true + + if (!isPlayerClosed()) { + stopVoiceRecordPlayer() + } } fun stopVoiceRecording() {