From 0c3d872bcc980d38affe7f5b5388199968bf3733 Mon Sep 17 00:00:00 2001 From: ganfra Date: Fri, 29 Mar 2024 11:37:29 +0100 Subject: [PATCH] RoomDirectory : use same logic for name description computation --- .../impl/root/model/RoomDescription.kt | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/features/roomdirectory/impl/src/main/kotlin/io/element/android/features/roomdirectory/impl/root/model/RoomDescription.kt b/features/roomdirectory/impl/src/main/kotlin/io/element/android/features/roomdirectory/impl/root/model/RoomDescription.kt index 405d4241b2..be36eb5053 100644 --- a/features/roomdirectory/impl/src/main/kotlin/io/element/android/features/roomdirectory/impl/root/model/RoomDescription.kt +++ b/features/roomdirectory/impl/src/main/kotlin/io/element/android/features/roomdirectory/impl/root/model/RoomDescription.kt @@ -22,13 +22,29 @@ import io.element.android.libraries.designsystem.components.avatar.AvatarSize import io.element.android.libraries.matrix.api.roomdirectory.RoomDescription as MatrixRoomDescription fun MatrixRoomDescription.toFeatureModel(): RoomDescription { + fun name(): String { + return name ?: alias ?: roomId.value + } + + fun description(): String { + val topic = topic + val alias = alias + val name = name + return when { + topic != null -> topic + name != null && alias != null -> alias + name == null && alias == null -> "" + else -> roomId.value + } + } + return RoomDescription( roomId = roomId, - name = name ?: "", - description = topic ?: alias ?: roomId.value, + name = name(), + description = description(), avatarData = AvatarData( id = roomId.value, - name = name ?: "", + name = name, url = avatarUrl, size = AvatarSize.RoomDirectoryItem, ),