diff --git a/app/src/main/java/org/thoughtcrime/securesms/calls/links/details/CallLinkDetailsFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/calls/links/details/CallLinkDetailsFragment.kt index f2b92a93b5..c85e80f519 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/calls/links/details/CallLinkDetailsFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/calls/links/details/CallLinkDetailsFragment.kt @@ -166,9 +166,14 @@ class CallLinkDetailsFragment : ComposeFragment(), CallLinkDetailsCallback { override fun onApproveAllMembersChanged(checked: Boolean) { lifecycleDisposable += viewModel.setApproveAllMembers(checked).observeOn(AndroidSchedulers.mainThread()).subscribeBy(onSuccess = { - if (it !is UpdateCallLinkResult.Update) { + if (it is UpdateCallLinkResult.Failure) { Log.w(TAG, "Failed to change restrictions. $it") - toastFailure() + + if (it.status == 409.toShort()) { + toastCallLinkInUse() + } else { + toastFailure() + } } }, onError = handleError("onApproveAllMembersChanged")) } @@ -189,6 +194,10 @@ class CallLinkDetailsFragment : ComposeFragment(), CallLinkDetailsCallback { } } + private fun toastCallLinkInUse() { + Toast.makeText(requireContext(), R.string.CallLinkDetailsFragment__couldnt_update_admin_approval, Toast.LENGTH_LONG).show() + } + private fun toastFailure() { Toast.makeText(requireContext(), R.string.CallLinkDetailsFragment__couldnt_save_changes, Toast.LENGTH_LONG).show() } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 671a9e55c9..51a36d9fe1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -7264,6 +7264,8 @@ Delete call link Couldn\'t save changes. Check your network connection and try again. + + Couldn\'t update admin approval settings. Check the call link is not currently in use. Couldn\'t delete call link as it is currently in use.