Fixed issue in forward message UI since sliding pane changes

This commit is contained in:
Sylvain Berfini 2021-07-12 15:01:59 +02:00
parent 831dacd243
commit e8266178b0
3 changed files with 14 additions and 13 deletions

View file

@ -234,8 +234,12 @@ class DetailChatRoomFragment : MasterFragment<ChatRoomDetailFragmentBinding, Cha
// as we don't want to forward it in this chat room // as we don't want to forward it in this chat room
sharedViewModel.messageToForwardEvent.removeObservers(viewLifecycleOwner) sharedViewModel.messageToForwardEvent.removeObservers(viewLifecycleOwner)
sharedViewModel.messageToForwardEvent.value = Event(chatMessage) sharedViewModel.messageToForwardEvent.value = Event(chatMessage)
sharedViewModel.isPendingMessageForward.value = true
if (sharedViewModel.canSlidingPaneBeClosed.value == true) {
Log.i("[Chat Room] Forwarding message, going to chat rooms list") Log.i("[Chat Room] Forwarding message, going to chat rooms list")
goBack() sharedViewModel.closeSlidingPaneEvent.value = Event(true)
}
} }
}) })
@ -400,6 +404,7 @@ class DetailChatRoomFragment : MasterFragment<ChatRoomDetailFragmentBinding, Cha
it.consume { chatMessage -> it.consume { chatMessage ->
Log.i("[Chat Room] Found message to transfer") Log.i("[Chat Room] Found message to transfer")
showForwardConfirmationDialog(chatMessage) showForwardConfirmationDialog(chatMessage)
sharedViewModel.isPendingMessageForward.value = false
} }
}) })
} }

View file

@ -207,8 +207,7 @@ class MasterChatRoomsFragment : MasterFragment<ChatRoomMasterFragmentBinding, Ch
sharedViewModel.messageToForwardEvent.value?.consume { sharedViewModel.messageToForwardEvent.value?.consume {
Log.i("[Chat] Cancelling message forward") Log.i("[Chat] Cancelling message forward")
} }
listViewModel.forwardPending.value = false sharedViewModel.isPendingMessageForward.value = false
adapter.forwardPending(false)
} }
binding.setCancelSharingClickListener { binding.setCancelSharingClickListener {
@ -279,16 +278,11 @@ class MasterChatRoomsFragment : MasterFragment<ChatRoomMasterFragmentBinding, Ch
} }
} }
}) })
sharedViewModel.messageToForwardEvent.observe(viewLifecycleOwner, { sharedViewModel.isPendingMessageForward.observe(viewLifecycleOwner, {
if (!it.consumed()) { listViewModel.forwardPending.value = it
adapter.forwardPending(it)
if (it) {
Log.i("[Chat] Found chat message to transfer") Log.i("[Chat] Found chat message to transfer")
// val activity = requireActivity() as MainActivity
// activity.showSnackBar(R.string.chat_room_toast_choose_for_sharing)
listViewModel.forwardPending.value = true
adapter.forwardPending(true)
} else {
listViewModel.forwardPending.value = false
adapter.forwardPending(false)
} }
}) })

View file

@ -52,6 +52,8 @@ class SharedMainViewModel : ViewModel() {
MutableLiveData<Event<ChatMessage>>() MutableLiveData<Event<ChatMessage>>()
} }
val isPendingMessageForward = MutableLiveData<Boolean>()
val contentToOpen = MutableLiveData<Content>() val contentToOpen = MutableLiveData<Content>()
var createEncryptedChatRoom: Boolean = false var createEncryptedChatRoom: Boolean = false