diff --git a/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessagesListViewModel.kt b/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessagesListViewModel.kt index 6e276a724..b93aba84f 100644 --- a/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessagesListViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessagesListViewModel.kt @@ -122,11 +122,15 @@ class ChatMessagesListViewModel(private val chatRoom: ChatRoom) : ViewModel() { } override fun onConferenceJoined(chatRoom: ChatRoom, eventLog: EventLog) { - addEvent(eventLog) + if (!chatRoom.hasCapability(ChatRoomCapabilities.OneToOne.toInt())) { + addEvent(eventLog) + } } override fun onConferenceLeft(chatRoom: ChatRoom, eventLog: EventLog) { - addEvent(eventLog) + if (!chatRoom.hasCapability(ChatRoomCapabilities.OneToOne.toInt())) { + addEvent(eventLog) + } } override fun onEphemeralMessageDeleted(chatRoom: ChatRoom, eventLog: EventLog) { diff --git a/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatRoomViewModel.kt b/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatRoomViewModel.kt index ac5c4c1e2..7b0c95af3 100644 --- a/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatRoomViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatRoomViewModel.kt @@ -45,14 +45,15 @@ class ChatRoomViewModelFactory(private val chatRoom: ChatRoom) : class ChatRoomViewModel(val chatRoom: ChatRoom) : ViewModel(), ContactViewModelInterface { override val contact = MutableLiveData() - override val displayName: String by lazy { - 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() - else -> chatRoom.peerAddress.asStringUriOnly() + 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() + else -> chatRoom.peerAddress.asStringUriOnly() + } } - } override val securityLevel: ChatRoomSecurityLevel get() = chatRoom.securityLevel @@ -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) {