Prevent typing message after starting voice recording in chat by disabling field & hiding keyboard

This commit is contained in:
Sylvain Berfini 2024-02-29 21:11:18 +01:00
parent 40610fd98f
commit 3aaea594f4
3 changed files with 6 additions and 4 deletions

View file

@ -185,10 +185,6 @@ class ConversationFragment : SlidingPaneChildFragment() {
private val dataObserver = object : AdapterDataObserver() {
override fun onItemRangeInserted(positionStart: Int, itemCount: Int) {
if (positionStart > 0) {
adapter.notifyItemChanged(positionStart - 1) // For grouping purposes
}
if (viewModel.isUserScrollingUp.value == true) {
Log.i(
"$TAG [$itemCount] events have been loaded but user was scrolling up in conversation, do not scroll"
@ -207,6 +203,10 @@ class ConversationFragment : SlidingPaneChildFragment() {
)
}
scrollToFirstUnreadMessageOrBottom()
if (positionStart > 0) {
adapter.notifyItemChanged(positionStart - 1) // For grouping purposes
}
}
}

View file

@ -377,6 +377,7 @@ class SendMessageInConversationViewModel @UiThread constructor() : ViewModel() {
}
coreContext.postOnCoreThread {
requestKeyboardHidingEvent.postValue(Event(true))
isVoiceRecording.postValue(true)
initVoiceRecorder()

View file

@ -148,6 +148,7 @@
android:text="@={viewModel.textToSend}"
android:textColorHint="?attr/color_main2_400"
android:textSize="14sp"
android:enabled="@{!viewModel.isVoiceRecording}"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/send_barrier"
app:layout_constraintStart_toStartOf="@id/message_area_background"