Remove secure chat button if LIME server or conference factory URI isn't set
This commit is contained in:
parent
c5313b5425
commit
3ba46dc9ab
2 changed files with 3 additions and 3 deletions
|
@ -204,7 +204,7 @@ class ContactViewModel(friend: Friend, async: Boolean = false) : MessageNotifier
|
||||||
val presenceModel = friend.getPresenceModelForUriOrTel(value)
|
val presenceModel = friend.getPresenceModelForUriOrTel(value)
|
||||||
val hasPresence = presenceModel?.basicStatus == PresenceBasicStatus.Open
|
val hasPresence = presenceModel?.basicStatus == PresenceBasicStatus.Open
|
||||||
val isMe = coreContext.core.defaultAccount?.params?.identityAddress?.weakEqual(address) ?: false
|
val isMe = coreContext.core.defaultAccount?.params?.identityAddress?.weakEqual(address) ?: false
|
||||||
val secureChatAllowed = !isMe && friend.getPresenceModelForUriOrTel(value)?.hasCapability(FriendCapability.LimeX3Dh) ?: false
|
val secureChatAllowed = LinphoneUtils.isLimeAvailable() && !isMe && friend.getPresenceModelForUriOrTel(value)?.hasCapability(FriendCapability.LimeX3Dh) ?: false
|
||||||
val displayValue = if (coreContext.core.defaultAccount?.params?.domain == address.domain) (address.username ?: value) else value
|
val displayValue = if (coreContext.core.defaultAccount?.params?.domain == address.domain) (address.username ?: value) else value
|
||||||
val noa = ContactNumberOrAddressData(address, hasPresence, displayValue, showSecureChat = secureChatAllowed, listener = listener)
|
val noa = ContactNumberOrAddressData(address, hasPresence, displayValue, showSecureChat = secureChatAllowed, listener = listener)
|
||||||
list.add(noa)
|
list.add(noa)
|
||||||
|
@ -218,7 +218,7 @@ class ContactViewModel(friend: Friend, async: Boolean = false) : MessageNotifier
|
||||||
val address = coreContext.core.interpretUrl(contactAddress)
|
val address = coreContext.core.interpretUrl(contactAddress)
|
||||||
address?.displayName = displayName.value.orEmpty()
|
address?.displayName = displayName.value.orEmpty()
|
||||||
val isMe = if (address != null) coreContext.core.defaultAccount?.params?.identityAddress?.weakEqual(address) ?: false else false
|
val isMe = if (address != null) coreContext.core.defaultAccount?.params?.identityAddress?.weakEqual(address) ?: false else false
|
||||||
val secureChatAllowed = !isMe && friend.getPresenceModelForUriOrTel(number)?.hasCapability(FriendCapability.LimeX3Dh) ?: false
|
val secureChatAllowed = LinphoneUtils.isLimeAvailable() && !isMe && friend.getPresenceModelForUriOrTel(number)?.hasCapability(FriendCapability.LimeX3Dh) ?: false
|
||||||
val label = PhoneNumberUtils.vcardParamStringToAddressBookLabel(coreContext.context.resources, phoneNumber.label ?: "")
|
val label = PhoneNumberUtils.vcardParamStringToAddressBookLabel(coreContext.context.resources, phoneNumber.label ?: "")
|
||||||
val noa = ContactNumberOrAddressData(address, hasPresence, number, isSip = false, showSecureChat = secureChatAllowed, typeLabel = label, listener = listener)
|
val noa = ContactNumberOrAddressData(address, hasPresence, number, isSip = false, showSecureChat = secureChatAllowed, typeLabel = label, listener = listener)
|
||||||
list.add(noa)
|
list.add(noa)
|
||||||
|
|
|
@ -99,7 +99,7 @@ class CallLogViewModel(val callLog: CallLog, private val isRelated: Boolean = fa
|
||||||
|
|
||||||
val chatAllowed = !corePreferences.disableChat
|
val chatAllowed = !corePreferences.disableChat
|
||||||
|
|
||||||
val secureChatAllowed = contact.value?.getPresenceModelForUriOrTel(peerSipUri)?.hasCapability(FriendCapability.LimeX3Dh) ?: false
|
val secureChatAllowed = LinphoneUtils.isLimeAvailable() && (contact.value?.getPresenceModelForUriOrTel(peerSipUri)?.hasCapability(FriendCapability.LimeX3Dh) ?: false)
|
||||||
|
|
||||||
val relatedCallLogs = MutableLiveData<ArrayList<CallLogViewModel>>()
|
val relatedCallLogs = MutableLiveData<ArrayList<CallLogViewModel>>()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue