Fixed display issue when creating 1-1 encrypted chat rooms

This commit is contained in:
Sylvain Berfini 2021-01-18 17:30:52 +01:00
parent 1d20314726
commit 886f225016
2 changed files with 15 additions and 9 deletions

View file

@ -122,12 +122,16 @@ class ChatMessagesListViewModel(private val chatRoom: ChatRoom) : ViewModel() {
}
override fun onConferenceJoined(chatRoom: ChatRoom, eventLog: EventLog) {
if (!chatRoom.hasCapability(ChatRoomCapabilities.OneToOne.toInt())) {
addEvent(eventLog)
}
}
override fun onConferenceLeft(chatRoom: ChatRoom, eventLog: EventLog) {
if (!chatRoom.hasCapability(ChatRoomCapabilities.OneToOne.toInt())) {
addEvent(eventLog)
}
}
override fun onEphemeralMessageDeleted(chatRoom: ChatRoom, eventLog: EventLog) {
Log.i("[Chat Messages] An ephemeral chat message has expired, removing it from event list")

View file

@ -45,8 +45,9 @@ class ChatRoomViewModelFactory(private val chatRoom: ChatRoom) :
class ChatRoomViewModel(val chatRoom: ChatRoom) : ViewModel(), ContactViewModelInterface {
override val contact = MutableLiveData<Contact>()
override val displayName: String by lazy {
when {
override val displayName: String
get() {
return when {
chatRoom.hasCapability(ChatRoomCapabilities.Basic.toInt()) -> LinphoneUtils.getDisplayName(chatRoom.peerAddress)
chatRoom.hasCapability(ChatRoomCapabilities.OneToOne.toInt()) -> LinphoneUtils.getDisplayName(chatRoom.participants.firstOrNull()?.address ?: chatRoom.peerAddress)
chatRoom.hasCapability(ChatRoomCapabilities.Conference.toInt()) -> chatRoom.subject.orEmpty()
@ -172,6 +173,7 @@ class ChatRoomViewModel(val chatRoom: ChatRoom) : ViewModel(), ContactViewModelI
override fun onConferenceJoined(chatRoom: ChatRoom, eventLog: EventLog) {
contactLookup()
updateSecurityIcon()
subject.value = chatRoom.subject
}
override fun onSecurityEvent(chatRoom: ChatRoom, eventLog: EventLog) {