From 9c8c5f309ea7d8132555e01ebf806735342481ba Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Tue, 25 Mar 2025 16:27:40 +0100 Subject: [PATCH] Added hidden setting to allow hiding SIP URIs, show device name instead of SIP full SIP URI when doing trust call from contact details --- .../org/linphone/contacts/ContactsManager.kt | 24 ++++++++++--------- .../java/org/linphone/core/CorePreferences.kt | 4 ++++ .../ui/call/viewmodel/CurrentCallViewModel.kt | 3 +++ .../MessageBottomSheetParticipantModel.kt | 2 +- .../ui/main/chat/model/ParticipantModel.kt | 2 +- .../viewmodel/ConversationInfoViewModel.kt | 3 +++ .../main/contacts/fragment/ContactFragment.kt | 14 +++++------ .../contacts/viewmodel/ContactViewModel.kt | 6 ++--- .../viewmodel/ContactsListViewModel.kt | 2 +- .../history/viewmodel/HistoryViewModel.kt | 3 +++ .../ConversationContactOrSuggestionModel.kt | 7 +++++- .../viewmodel/AccountProfileViewModel.kt | 3 +++ .../res/layout-land/call_active_fragment.xml | 1 + .../res/layout-land/call_ended_fragment.xml | 3 ++- .../layout-land/call_incoming_fragment.xml | 2 +- .../layout-land/call_outgoing_fragment.xml | 3 ++- .../res/layout/account_profile_fragment.xml | 2 ++ .../main/res/layout/call_active_fragment.xml | 2 +- .../main/res/layout/call_ended_fragment.xml | 1 + .../res/layout/call_incoming_fragment.xml | 2 +- .../res/layout/call_outgoing_fragment.xml | 1 + .../main/res/layout/chat_info_fragment.xml | 4 ++-- app/src/main/res/layout/history_fragment.xml | 2 +- 23 files changed, 63 insertions(+), 33 deletions(-) diff --git a/app/src/main/java/org/linphone/contacts/ContactsManager.kt b/app/src/main/java/org/linphone/contacts/ContactsManager.kt index 291fc6516..096698d92 100644 --- a/app/src/main/java/org/linphone/contacts/ContactsManager.kt +++ b/app/src/main/java/org/linphone/contacts/ContactsManager.kt @@ -795,16 +795,18 @@ fun Friend.getListOfSipAddresses(): ArrayList
{ fun Friend.getListOfSipAddressesAndPhoneNumbers(listener: ContactNumberOrAddressClickListener): ArrayList { val addressesAndNumbers = arrayListOf() - for (address in getListOfSipAddresses()) { - val data = ContactNumberOrAddressModel( - this, - address, - address.asStringUriOnly(), - true, // SIP addresses are always enabled - listener, - true - ) - addressesAndNumbers.add(data) + if (!corePreferences.hideSipAddresses) { + for (address in getListOfSipAddresses()) { + val data = ContactNumberOrAddressModel( + this, + address, + address.asStringUriOnly(), + true, // SIP addresses are always enabled + listener, + true + ) + addressesAndNumbers.add(data) + } } if (corePreferences.hidePhoneNumbers) { return addressesAndNumbers @@ -825,7 +827,7 @@ fun Friend.getListOfSipAddressesAndPhoneNumbers(listener: ContactNumberOrAddress if (address != null) { address.clean() // To remove ;user=phone presenceAddress = address - if (addressesAndNumbers.find { it.address?.weakEqual(address) == true } == null) { + if (!corePreferences.hideSipAddresses && addressesAndNumbers.find { it.address?.weakEqual(address) == true } == null) { val data = ContactNumberOrAddressModel( this, address, diff --git a/app/src/main/java/org/linphone/core/CorePreferences.kt b/app/src/main/java/org/linphone/core/CorePreferences.kt index 5e05581f0..9a3718ecd 100644 --- a/app/src/main/java/org/linphone/core/CorePreferences.kt +++ b/app/src/main/java/org/linphone/core/CorePreferences.kt @@ -281,6 +281,10 @@ class CorePreferences val onlyDisplaySipUriUsername: Boolean get() = config.getBool("ui", "only_display_sip_uri_username", false) + @get:WorkerThread + val hideSipAddresses: Boolean + get() = config.getBool("ui", "hide_sip_addresses", false) + @get:WorkerThread val disableChat: Boolean get() = config.getBool("ui", "disable_chat_feature", false) diff --git a/app/src/main/java/org/linphone/ui/call/viewmodel/CurrentCallViewModel.kt b/app/src/main/java/org/linphone/ui/call/viewmodel/CurrentCallViewModel.kt index 7eebbb963..502a1d28a 100644 --- a/app/src/main/java/org/linphone/ui/call/viewmodel/CurrentCallViewModel.kt +++ b/app/src/main/java/org/linphone/ui/call/viewmodel/CurrentCallViewModel.kt @@ -145,6 +145,8 @@ class CurrentCallViewModel val qualityIcon = MutableLiveData() + val hideSipAddresses = MutableLiveData() + var terminatedByUser = false val isRemoteRecordingEvent: MutableLiveData>> by lazy { @@ -541,6 +543,7 @@ class CurrentCallViewModel videoUpdateInProgress.value = false coreContext.postOnCoreThread { core -> + hideSipAddresses.postValue(corePreferences.hideSipAddresses) coreContext.contactsManager.addListener(contactsListener) core.addListener(coreListener) diff --git a/app/src/main/java/org/linphone/ui/main/chat/model/MessageBottomSheetParticipantModel.kt b/app/src/main/java/org/linphone/ui/main/chat/model/MessageBottomSheetParticipantModel.kt index c1c7f69ea..0480f20ac 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/model/MessageBottomSheetParticipantModel.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/model/MessageBottomSheetParticipantModel.kt @@ -47,7 +47,7 @@ class MessageBottomSheetParticipantModel @UiThread fun clicked() { - if (!isOurOwnReaction && !corePreferences.onlyDisplaySipUriUsername) { + if (!isOurOwnReaction && !corePreferences.onlyDisplaySipUriUsername && !corePreferences.hideSipAddresses) { showSipUri.postValue(showSipUri.value == false) } else { onClick?.invoke() diff --git a/app/src/main/java/org/linphone/ui/main/chat/model/ParticipantModel.kt b/app/src/main/java/org/linphone/ui/main/chat/model/ParticipantModel.kt index c7f171ae6..7367f197c 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/model/ParticipantModel.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/model/ParticipantModel.kt @@ -59,7 +59,7 @@ class ParticipantModel @UiThread fun onClicked() { - if (onClicked == null && !corePreferences.onlyDisplaySipUriUsername) { + if (onClicked == null && !corePreferences.onlyDisplaySipUriUsername && !corePreferences.hideSipAddresses) { showSipUri.postValue(showSipUri.value == false) } else { onClicked?.invoke(this) diff --git a/app/src/main/java/org/linphone/ui/main/chat/viewmodel/ConversationInfoViewModel.kt b/app/src/main/java/org/linphone/ui/main/chat/viewmodel/ConversationInfoViewModel.kt index 080120051..ce12b415b 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/viewmodel/ConversationInfoViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/viewmodel/ConversationInfoViewModel.kt @@ -56,6 +56,8 @@ class ConversationInfoViewModel val isGroup = MutableLiveData() + val hideSipAddresses = MutableLiveData() + val isEndToEndEncrypted = MutableLiveData() val subject = MutableLiveData() @@ -192,6 +194,7 @@ class ConversationInfoViewModel showPeerSipUri.value = false coreContext.postOnCoreThread { + hideSipAddresses.postValue(corePreferences.hideSipAddresses) coreContext.contactsManager.addListener(contactsListener) } } diff --git a/app/src/main/java/org/linphone/ui/main/contacts/fragment/ContactFragment.kt b/app/src/main/java/org/linphone/ui/main/contacts/fragment/ContactFragment.kt index 7ccb9d9d1..164913efb 100644 --- a/app/src/main/java/org/linphone/ui/main/contacts/fragment/ContactFragment.kt +++ b/app/src/main/java/org/linphone/ui/main/contacts/fragment/ContactFragment.kt @@ -221,8 +221,8 @@ class ContactFragment : SlidingPaneChildFragment() { } viewModel.startCallToDeviceToIncreaseTrustEvent.observe(viewLifecycleOwner) { - it.consume { pair -> - callDirectlyOrShowConfirmTrustCallDialog(pair.first, pair.second) + it.consume { triple -> + callDirectlyOrShowConfirmTrustCallDialog(triple.first, triple.second, triple.third) } } @@ -303,18 +303,18 @@ class ContactFragment : SlidingPaneChildFragment() { } private fun showTrustProcessDialog() { - val initials = viewModel.contact.value?.initials?.value ?: "JD" + val initials = viewModel.contact.value?.initials?.value.orEmpty() val picture = viewModel.contact.value?.picturePath?.value.orEmpty() val model = ContactTrustDialogModel(initials, picture) val dialog = DialogUtils.getContactTrustProcessExplanationDialog(requireActivity(), model) dialog.show() } - private fun callDirectlyOrShowConfirmTrustCallDialog(contactName: String, deviceSipUri: String) { + private fun callDirectlyOrShowConfirmTrustCallDialog(contactName: String, deviceName: String, deviceSipUri: String) { coreContext.postOnCoreThread { if (corePreferences.showDialogWhenCallingDeviceUuidDirectly) { coreContext.postOnMainThread { - showConfirmTrustCallDialog(contactName, deviceSipUri) + showConfirmTrustCallDialog(contactName, deviceName, deviceSipUri) } } else { val address = Factory.instance().createAddress(deviceSipUri) @@ -325,11 +325,11 @@ class ContactFragment : SlidingPaneChildFragment() { } } - private fun showConfirmTrustCallDialog(contactName: String, deviceSipUri: String) { + private fun showConfirmTrustCallDialog(contactName: String, deviceName: String, deviceSipUri: String) { val label = AppUtils.getFormattedString( R.string.contact_dialog_increase_trust_level_message, contactName, - deviceSipUri + deviceName ) val model = ConfirmationDialogModel(label) val dialog = DialogUtils.getContactTrustCallConfirmationDialog(requireActivity(), model) diff --git a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactViewModel.kt b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactViewModel.kt index a4a3c5c40..98d7da2f6 100644 --- a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactViewModel.kt @@ -129,8 +129,8 @@ class ContactViewModel MutableLiveData>() } - val startCallToDeviceToIncreaseTrustEvent: MutableLiveData>> by lazy { - MutableLiveData>>() + val startCallToDeviceToIncreaseTrustEvent: MutableLiveData>> by lazy { + MutableLiveData>>() } val contactRemovedEvent: MutableLiveData> by lazy { @@ -601,7 +601,7 @@ class ContactViewModel ) { if (::friend.isInitialized) { startCallToDeviceToIncreaseTrustEvent.value = - Event(Pair(friend.name.orEmpty(), it.address.asStringUriOnly())) + Event(Triple(friend.name.orEmpty(), it.name, it.address.asStringUriOnly())) } } ) diff --git a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactsListViewModel.kt b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactsListViewModel.kt index c0396b1a4..71862217a 100644 --- a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactsListViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactsListViewModel.kt @@ -102,7 +102,7 @@ class ContactsListViewModel init { fetchInProgress.value = true showFavourites.value = corePreferences.showFavoriteContacts - showFilter.value = !corePreferences.hidePhoneNumbers + showFilter.value = !corePreferences.hidePhoneNumbers && !corePreferences.hideSipAddresses coreContext.postOnCoreThread { core -> updateDomainFilter() diff --git a/app/src/main/java/org/linphone/ui/main/history/viewmodel/HistoryViewModel.kt b/app/src/main/java/org/linphone/ui/main/history/viewmodel/HistoryViewModel.kt index 6f96dda67..e89c6990c 100644 --- a/app/src/main/java/org/linphone/ui/main/history/viewmodel/HistoryViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/history/viewmodel/HistoryViewModel.kt @@ -63,6 +63,8 @@ class HistoryViewModel val isChatRoomAvailable = MutableLiveData() + val hideSipAddresses = MutableLiveData() + val callLogFoundEvent = MutableLiveData>() val chatRoomCreationErrorEvent: MutableLiveData> by lazy { @@ -135,6 +137,7 @@ class HistoryViewModel core.addListener(coreListener) chatDisabled.postValue(corePreferences.disableChat) videoCallDisabled.postValue(!core.isVideoEnabled) + hideSipAddresses.postValue(corePreferences.hideSipAddresses) } } diff --git a/app/src/main/java/org/linphone/ui/main/model/ConversationContactOrSuggestionModel.kt b/app/src/main/java/org/linphone/ui/main/model/ConversationContactOrSuggestionModel.kt index 1c53b546e..8ad0e6640 100644 --- a/app/src/main/java/org/linphone/ui/main/model/ConversationContactOrSuggestionModel.kt +++ b/app/src/main/java/org/linphone/ui/main/model/ConversationContactOrSuggestionModel.kt @@ -22,6 +22,7 @@ package org.linphone.ui.main.model import androidx.annotation.UiThread import androidx.annotation.WorkerThread import androidx.lifecycle.MutableLiveData +import org.linphone.LinphoneApplication.Companion.corePreferences import org.linphone.core.Address import org.linphone.core.Friend import org.linphone.ui.main.contacts.model.ContactAvatarModel @@ -48,7 +49,11 @@ class ConversationContactOrSuggestionModel address.username.orEmpty() } - val sipUri = address.asStringUriOnly() + val sipUri = if (!corePreferences.hideSipAddresses) { + address.asStringUriOnly() + } else { + address.username + } val initials = AppUtils.getInitials(conversationSubject ?: name) diff --git a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt index 617e82747..b520f0cc8 100644 --- a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt @@ -86,6 +86,8 @@ class AccountProfileViewModel val hideAccountSettings = MutableLiveData() + val hideSipAddresses = MutableLiveData() + val deviceId = MutableLiveData() val showDeviceId = MutableLiveData() @@ -179,6 +181,7 @@ class AccountProfileViewModel coreContext.postOnCoreThread { hideAccountSettings.postValue(corePreferences.hideAccountSettings) + hideSipAddresses.postValue(corePreferences.hideSipAddresses) dialPlansLabelList.add("") // To allow removing selected dial plan val dialPlans = Factory.instance().dialPlans.toList() diff --git a/app/src/main/res/layout-land/call_active_fragment.xml b/app/src/main/res/layout-land/call_active_fragment.xml index 43d947f0c..aa8d96528 100644 --- a/app/src/main/res/layout-land/call_active_fragment.xml +++ b/app/src/main/res/layout-land/call_active_fragment.xml @@ -100,6 +100,7 @@ android:id="@+id/address" android:layout_width="wrap_content" android:layout_height="wrap_content" + android:visibility="@{viewModel.hideSipAddresses ? View.GONE : View.VISIBLE}" android:text="@{viewModel.displayedAddress, default=`sip:johndoe@sip.linphone.org`}" android:textColor="@color/bc_white" android:textSize="14sp" /> diff --git a/app/src/main/res/layout-land/call_ended_fragment.xml b/app/src/main/res/layout-land/call_ended_fragment.xml index 2a8e0554a..209f04667 100644 --- a/app/src/main/res/layout-land/call_ended_fragment.xml +++ b/app/src/main/res/layout-land/call_ended_fragment.xml @@ -78,7 +78,8 @@ android:layout_height="wrap_content" android:text="@{viewModel.displayedAddress, default=`sip:johndoe@sip.linphone.org`}" android:textColor="@color/bc_white" - android:textSize="14sp" /> + android:textSize="14sp" + android:visibility="@{viewModel.hideSipAddresses ? View.GONE : View.VISIBLE}" /> diff --git a/app/src/main/res/layout-land/call_incoming_fragment.xml b/app/src/main/res/layout-land/call_incoming_fragment.xml index 26859bbc7..414a8b063 100644 --- a/app/src/main/res/layout-land/call_incoming_fragment.xml +++ b/app/src/main/res/layout-land/call_incoming_fragment.xml @@ -59,7 +59,7 @@ android:text="@{viewModel.displayedAddress, default=`sip:johndoe@sip.linphone.org`}" android:textColor="@color/bc_white" android:textSize="14sp" - android:visibility="@{viewModel.conferenceModel.isCurrentCallInConference ? View.GONE : View.VISIBLE}" /> + android:visibility="@{viewModel.hideSipAddresses || viewModel.conferenceModel.isCurrentCallInConference ? View.GONE : View.VISIBLE}" /> diff --git a/app/src/main/res/layout-land/call_outgoing_fragment.xml b/app/src/main/res/layout-land/call_outgoing_fragment.xml index 2f9c0292f..63960a174 100644 --- a/app/src/main/res/layout-land/call_outgoing_fragment.xml +++ b/app/src/main/res/layout-land/call_outgoing_fragment.xml @@ -80,7 +80,8 @@ android:layout_height="wrap_content" android:text="@{viewModel.displayedAddress, default=`sip:johndoe@sip.linphone.org`}" android:textColor="@color/bc_white" - android:textSize="14sp" /> + android:textSize="14sp" + android:visibility="@{viewModel.hideSipAddresses ? View.GONE : View.VISIBLE}" /> diff --git a/app/src/main/res/layout/account_profile_fragment.xml b/app/src/main/res/layout/account_profile_fragment.xml index 50e6706ca..6d23845d3 100644 --- a/app/src/main/res/layout/account_profile_fragment.xml +++ b/app/src/main/res/layout/account_profile_fragment.xml @@ -213,6 +213,7 @@ android:paddingTop="8dp" android:paddingBottom="8dp" android:text="@string/sip_address" + android:visibility="@{!viewModel.hideSipAddresses || viewModel.showDeviceId ? View.VISIBLE : View.GONE, default=gone}" app:layout_constraintStart_toStartOf="@id/details_background" app:layout_constraintTop_toTopOf="@id/details_background"/> @@ -233,6 +234,7 @@ android:drawableEnd="@drawable/copy" android:drawablePadding="5dp" app:drawableTint="?attr/color_main2_600" + android:visibility="@{!viewModel.hideSipAddresses || viewModel.showDeviceId ? View.VISIBLE : View.GONE, default=gone}" app:layout_constraintStart_toEndOf="@id/sip_address_label" app:layout_constraintEnd_toEndOf="@id/details_background" app:layout_constraintTop_toTopOf="@id/sip_address_label" diff --git a/app/src/main/res/layout/call_active_fragment.xml b/app/src/main/res/layout/call_active_fragment.xml index 1d88bb538..0e638cfe1 100644 --- a/app/src/main/res/layout/call_active_fragment.xml +++ b/app/src/main/res/layout/call_active_fragment.xml @@ -98,7 +98,7 @@ android:text="@{viewModel.displayedAddress, default=`sip:johndoe@sip.linphone.org`}" android:textColor="@color/bc_white" android:textSize="14sp" - android:visibility="@{viewModel.pipMode || viewModel.halfOpenedFolded ? View.GONE : View.VISIBLE}" + android:visibility="@{viewModel.hideSipAddresses || viewModel.pipMode || viewModel.halfOpenedFolded ? View.GONE : View.VISIBLE}" app:layout_constraintTop_toBottomOf="@id/display_name" app:layout_constraintBottom_toBottomOf="@id/hinge_bottom" app:layout_constraintStart_toStartOf="parent" diff --git a/app/src/main/res/layout/call_ended_fragment.xml b/app/src/main/res/layout/call_ended_fragment.xml index dfc8431d6..1659786bc 100644 --- a/app/src/main/res/layout/call_ended_fragment.xml +++ b/app/src/main/res/layout/call_ended_fragment.xml @@ -75,6 +75,7 @@ android:text="@{viewModel.displayedAddress, default=`sip:johndoe@sip.linphone.org`}" android:textColor="@color/bc_white" android:textSize="14sp" + android:visibility="@{viewModel.hideSipAddresses ? View.GONE : View.VISIBLE}" app:layout_constraintTop_toBottomOf="@id/name" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" diff --git a/app/src/main/res/layout/call_incoming_fragment.xml b/app/src/main/res/layout/call_incoming_fragment.xml index c8b55177f..96e3c4895 100644 --- a/app/src/main/res/layout/call_incoming_fragment.xml +++ b/app/src/main/res/layout/call_incoming_fragment.xml @@ -62,7 +62,7 @@ android:text="@{viewModel.displayedAddress, default=`sip:johndoe@sip.linphone.org`}" android:textColor="@color/bc_white" android:textSize="14sp" - android:visibility="@{viewModel.conferenceModel.isCurrentCallInConference ? View.GONE : View.VISIBLE}" + android:visibility="@{viewModel.hideSipAddresses || viewModel.conferenceModel.isCurrentCallInConference ? View.GONE : View.VISIBLE}" app:layout_constraintTop_toBottomOf="@id/name" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" diff --git a/app/src/main/res/layout/call_outgoing_fragment.xml b/app/src/main/res/layout/call_outgoing_fragment.xml index fe69ccf88..97026af94 100644 --- a/app/src/main/res/layout/call_outgoing_fragment.xml +++ b/app/src/main/res/layout/call_outgoing_fragment.xml @@ -100,6 +100,7 @@ android:text="@{viewModel.displayedAddress, default=`sip:johndoe@sip.linphone.org`}" android:textColor="@color/bc_white" android:textSize="14sp" + android:visibility="@{viewModel.hideSipAddresses ? View.GONE : View.VISIBLE}" app:layout_constraintTop_toBottomOf="@id/name" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" diff --git a/app/src/main/res/layout/chat_info_fragment.xml b/app/src/main/res/layout/chat_info_fragment.xml index 68a0ac254..f63d9dfec 100644 --- a/app/src/main/res/layout/chat_info_fragment.xml +++ b/app/src/main/res/layout/chat_info_fragment.xml @@ -155,7 +155,7 @@ android:textSize="14sp" android:drawableEnd="@drawable/copy" android:drawablePadding="5dp" - android:visibility="@{viewModel.isGroup ? View.GONE : View.VISIBLE, default=gone}" + android:visibility="@{viewModel.isGroup || viewModel.hideSipAddresses ? View.GONE : View.VISIBLE, default=gone}" app:drawableTint="?attr/color_main2_600" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -176,7 +176,7 @@ android:textSize="14sp" android:drawableEnd="@drawable/copy" android:drawablePadding="5dp" - android:visibility="@{viewModel.showPeerSipUri ? View.VISIBLE : View.GONE, default=gone}" + android:visibility="@{viewModel.showPeerSipUri && !viewModel.hideSipAddresses ? View.VISIBLE : View.GONE, default=gone}" app:drawableTint="?attr/color_main2_600" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" diff --git a/app/src/main/res/layout/history_fragment.xml b/app/src/main/res/layout/history_fragment.xml index 4f9d0cc50..cbc638fa0 100644 --- a/app/src/main/res/layout/history_fragment.xml +++ b/app/src/main/res/layout/history_fragment.xml @@ -129,7 +129,7 @@ android:textSize="14sp" android:maxLines="1" android:ellipsize="end" - android:visibility="@{viewModel.isConferenceCallLog ? View.GONE : View.VISIBLE}" + android:visibility="@{viewModel.isConferenceCallLog || viewModel.hideSipAddresses ? View.GONE : View.VISIBLE}" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/name" />