diff --git a/changelog.d/1912.bugfix b/changelog.d/1912.bugfix new file mode 100644 index 0000000000..63dbe0b496 --- /dev/null +++ b/changelog.d/1912.bugfix @@ -0,0 +1 @@ +Use the right avatar for DMs in DM rooms diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt index 4496469c44..1a8ae63645 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt @@ -133,10 +133,10 @@ class MessagesPresenter @AssistedInject constructor( val syncUpdateFlow = room.syncUpdateFlow.collectAsState() val userHasPermissionToSendMessage by room.canSendMessageAsState(type = MessageEventType.ROOM_MESSAGE, updateKey = syncUpdateFlow.value) val userHasPermissionToRedact by room.canRedactAsState(updateKey = syncUpdateFlow.value) - val roomName: Async by remember { + val roomName: Async by remember(roomInfo?.name) { derivedStateOf { roomInfo?.name?.let { Async.Success(it) } ?: Async.Uninitialized } } - val roomAvatar: Async by remember { + val roomAvatar: Async by remember(roomInfo?.avatarUrl) { derivedStateOf { roomInfo?.avatarData()?.let { Async.Success(it) } ?: Async.Uninitialized } } @@ -224,7 +224,7 @@ class MessagesPresenter @AssistedInject constructor( return AvatarData( id = id, name = name, - url = avatarUrl, + url = avatarUrl ?: room.avatarUrl, size = AvatarSize.TimelineRoom ) }