diff --git a/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt b/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt index d9410b9c1..9f3628984 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt @@ -212,6 +212,13 @@ open class ConversationFragment : SlidingPaneChildFragment() { .viewTreeObserver .removeOnGlobalLayoutListener(this) + binding.root.setKeyboardInsetListener { keyboardVisible -> + sendMessageViewModel.isKeyboardOpen.value = keyboardVisible + if (keyboardVisible) { + sendMessageViewModel.isEmojiPickerOpen.value = false + } + } + if (::scrollListener.isInitialized) { binding.eventsList.addOnScrollListener(scrollListener) } @@ -938,13 +945,6 @@ open class ConversationFragment : SlidingPaneChildFragment() { } }) - binding.root.setKeyboardInsetListener { keyboardVisible -> - sendMessageViewModel.isKeyboardOpen.value = keyboardVisible - if (keyboardVisible) { - sendMessageViewModel.isEmojiPickerOpen.value = false - } - } - binding.sendArea.messageToSend.addTextChangedListener(textObserver) scrollListener = object : ConversationScrollListener(layoutManager) { diff --git a/app/src/main/java/org/linphone/ui/main/chat/viewmodel/SendMessageInConversationViewModel.kt b/app/src/main/java/org/linphone/ui/main/chat/viewmodel/SendMessageInConversationViewModel.kt index 0230335d5..230a78b56 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/viewmodel/SendMessageInConversationViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/viewmodel/SendMessageInConversationViewModel.kt @@ -154,8 +154,10 @@ class SendMessageInConversationViewModel isFileTransferServerAvailable.postValue(!core.fileTransferServer.isNullOrEmpty()) } + isKeyboardOpen.value = false isEmojiPickerOpen.value = false areFilePickersOpen.value = false + isVoiceRecording.value = false isPlayingVoiceRecord.value = false isCallConversation.value = false maxNumberOfAttachmentsReached.value = false