diff --git a/app/src/main/java/org/linphone/ui/main/chat/viewmodel/ChatMessageLongPressViewModel.kt b/app/src/main/java/org/linphone/ui/main/chat/viewmodel/ChatMessageLongPressViewModel.kt index b4ac78b38..f6957b3eb 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/viewmodel/ChatMessageLongPressViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/viewmodel/ChatMessageLongPressViewModel.kt @@ -58,6 +58,8 @@ class ChatMessageLongPressViewModel : GenericViewModel() { val isMessageInError = MutableLiveData() + val hasBeenRetracted = MutableLiveData() + val showImdnInfoEvent: MutableLiveData> by lazy { MutableLiveData>() } @@ -97,14 +99,14 @@ class ChatMessageLongPressViewModel : GenericViewModel() { @UiThread fun setMessage(model: MessageModel) { - canBeEdited.postValue(model.chatMessage.isEditable) - canBeRemotelyDeleted.postValue(model.chatMessage.isRetractable) - hideCopyTextToClipboard.value = model.text.value.isNullOrEmpty() isChatRoomReadOnly.value = model.chatRoomIsReadOnly isMessageOutgoing.value = model.isOutgoing isMessageInError.value = model.isInError.value == true horizontalBias.value = if (model.isOutgoing) 1f else 0f + canBeEdited.value = model.chatMessage.isEditable + canBeRemotelyDeleted.value = model.chatMessage.isRetractable + hasBeenRetracted.value = model.hasBeenRetracted.value == true messageModel.value = model emojiBottomSheetBehavior.state = BottomSheetBehavior.STATE_HIDDEN diff --git a/app/src/main/res/layout/chat_bubble_long_press_menu.xml b/app/src/main/res/layout/chat_bubble_long_press_menu.xml index 517c129ef..01bcd9bcb 100644 --- a/app/src/main/res/layout/chat_bubble_long_press_menu.xml +++ b/app/src/main/res/layout/chat_bubble_long_press_menu.xml @@ -154,7 +154,7 @@ android:layout_height="wrap_content" android:text="@string/menu_reply_to_chat_message" android:background="@drawable/action_background_middle" - android:visibility="@{viewModel.isChatRoomReadOnly ? View.GONE : View.VISIBLE}" + android:visibility="@{viewModel.isChatRoomReadOnly || viewModel.hasBeenRetracted ? View.GONE : View.VISIBLE}" android:drawableEnd="@drawable/reply" /> + android:visibility="@{viewModel.isChatRoomReadOnly || viewModel.hasBeenRetracted ? View.GONE : View.VISIBLE}" /> + android:visibility="@{viewModel.hideForward || viewModel.hasBeenRetracted ? View.GONE : View.VISIBLE}" /> + android:visibility="@{viewModel.hideForward || viewModel.hasBeenRetracted ? View.GONE : View.VISIBLE}" />