From 3b588f467ac4a17e8c1a29805c5205974e7f98b8 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 2 May 2024 16:25:40 +0200 Subject: [PATCH] Allow to cancel meeting removal by clicking outside of dialog --- .../ui/main/history/model/ConfirmationDialogModel.kt | 7 +++++++ .../linphone/ui/main/meetings/fragment/MeetingFragment.kt | 6 ++++++ app/src/main/res/layout/dialog_cancel_meeting.xml | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/linphone/ui/main/history/model/ConfirmationDialogModel.kt b/app/src/main/java/org/linphone/ui/main/history/model/ConfirmationDialogModel.kt index 95ac1be98..0b8e1e5a7 100644 --- a/app/src/main/java/org/linphone/ui/main/history/model/ConfirmationDialogModel.kt +++ b/app/src/main/java/org/linphone/ui/main/history/model/ConfirmationDialogModel.kt @@ -26,6 +26,8 @@ import org.linphone.utils.Event class ConfirmationDialogModel @UiThread constructor() { val dismissEvent = MutableLiveData>() + val cancelEvent = MutableLiveData>() + val confirmEvent = MutableLiveData>() @UiThread @@ -33,6 +35,11 @@ class ConfirmationDialogModel @UiThread constructor() { dismissEvent.value = Event(true) } + @UiThread + fun cancel() { + cancelEvent.value = Event(true) + } + @UiThread fun confirm() { confirmEvent.value = Event(true) diff --git a/app/src/main/java/org/linphone/ui/main/meetings/fragment/MeetingFragment.kt b/app/src/main/java/org/linphone/ui/main/meetings/fragment/MeetingFragment.kt index 7b804879c..3f0f35c97 100644 --- a/app/src/main/java/org/linphone/ui/main/meetings/fragment/MeetingFragment.kt +++ b/app/src/main/java/org/linphone/ui/main/meetings/fragment/MeetingFragment.kt @@ -276,6 +276,12 @@ class MeetingFragment : SlidingPaneChildFragment() { val dialog = DialogUtils.getCancelMeetingDialog(requireContext(), model) model.dismissEvent.observe(viewLifecycleOwner) { + it.consume { + dialog.dismiss() + } + } + + model.cancelEvent.observe(viewLifecycleOwner) { it.consume { viewModel.delete() dialog.dismiss() diff --git a/app/src/main/res/layout/dialog_cancel_meeting.xml b/app/src/main/res/layout/dialog_cancel_meeting.xml index 9036c9aef..211875522 100644 --- a/app/src/main/res/layout/dialog_cancel_meeting.xml +++ b/app/src/main/res/layout/dialog_cancel_meeting.xml @@ -60,7 +60,7 @@ app:layout_constraintTop_toBottomOf="@id/title" />