feature(space) : ensure RoomSummaryRow can display space invites
This commit is contained in:
parent
73627d9319
commit
0d4e2dd2fb
5 changed files with 23 additions and 4 deletions
|
|
@ -189,10 +189,14 @@ private fun RoomSummaryScaffoldRow(
|
||||||
) {
|
) {
|
||||||
Avatar(
|
Avatar(
|
||||||
avatarData = room.avatarData,
|
avatarData = room.avatarData,
|
||||||
avatarType = AvatarType.Room(
|
avatarType = if (room.isSpace) {
|
||||||
heroes = room.heroes,
|
AvatarType.Space(isTombstoned = room.isTombstoned)
|
||||||
isTombstoned = room.isTombstoned,
|
} else {
|
||||||
),
|
AvatarType.Room(
|
||||||
|
heroes = room.heroes,
|
||||||
|
isTombstoned = room.isTombstoned,
|
||||||
|
)
|
||||||
|
},
|
||||||
hideImage = hideAvatarImage,
|
hideImage = hideAvatarImage,
|
||||||
)
|
)
|
||||||
Spacer(modifier = Modifier.width(16.dp))
|
Spacer(modifier = Modifier.width(16.dp))
|
||||||
|
|
|
||||||
|
|
@ -69,6 +69,7 @@ class RoomListRoomSummaryFactory(
|
||||||
user.getAvatarData(size = AvatarSize.RoomListItem)
|
user.getAvatarData(size = AvatarSize.RoomListItem)
|
||||||
}.toImmutableList(),
|
}.toImmutableList(),
|
||||||
isTombstoned = roomInfo.successorRoom != null,
|
isTombstoned = roomInfo.successorRoom != null,
|
||||||
|
isSpace = roomInfo.isSpace,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -38,6 +38,7 @@ data class RoomListRoomSummary(
|
||||||
val inviteSender: InviteSender?,
|
val inviteSender: InviteSender?,
|
||||||
val isTombstoned: Boolean,
|
val isTombstoned: Boolean,
|
||||||
val heroes: ImmutableList<AvatarData>,
|
val heroes: ImmutableList<AvatarData>,
|
||||||
|
val isSpace: Boolean,
|
||||||
) {
|
) {
|
||||||
val isHighlighted = userDefinedNotificationMode != RoomNotificationMode.MUTE &&
|
val isHighlighted = userDefinedNotificationMode != RoomNotificationMode.MUTE &&
|
||||||
(numberOfUnreadNotifications > 0 || numberOfUnreadMentions > 0) ||
|
(numberOfUnreadNotifications > 0 || numberOfUnreadMentions > 0) ||
|
||||||
|
|
|
||||||
|
|
@ -102,6 +102,15 @@ open class RoomListRoomSummaryProvider : PreviewParameterProvider<RoomListRoomSu
|
||||||
displayName = "Bob",
|
displayName = "Bob",
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
aRoomListRoomSummary(
|
||||||
|
name = "A space invite",
|
||||||
|
displayType = RoomSummaryDisplayType.INVITE,
|
||||||
|
inviteSender = anInviteSender(
|
||||||
|
userId = UserId("@bob:matrix.org"),
|
||||||
|
displayName = "Bob",
|
||||||
|
),
|
||||||
|
isSpace = true
|
||||||
|
),
|
||||||
aRoomListRoomSummary(
|
aRoomListRoomSummary(
|
||||||
name = "A knocked room",
|
name = "A knocked room",
|
||||||
displayType = RoomSummaryDisplayType.KNOCKED,
|
displayType = RoomSummaryDisplayType.KNOCKED,
|
||||||
|
|
@ -151,6 +160,7 @@ internal fun aRoomListRoomSummary(
|
||||||
canonicalAlias: RoomAlias? = null,
|
canonicalAlias: RoomAlias? = null,
|
||||||
heroes: List<AvatarData> = emptyList(),
|
heroes: List<AvatarData> = emptyList(),
|
||||||
isTombstoned: Boolean = false,
|
isTombstoned: Boolean = false,
|
||||||
|
isSpace: Boolean = false,
|
||||||
) = RoomListRoomSummary(
|
) = RoomListRoomSummary(
|
||||||
id = id,
|
id = id,
|
||||||
roomId = RoomId(id),
|
roomId = RoomId(id),
|
||||||
|
|
@ -172,4 +182,5 @@ internal fun aRoomListRoomSummary(
|
||||||
canonicalAlias = canonicalAlias,
|
canonicalAlias = canonicalAlias,
|
||||||
heroes = heroes.toImmutableList(),
|
heroes = heroes.toImmutableList(),
|
||||||
isTombstoned = isTombstoned,
|
isTombstoned = isTombstoned,
|
||||||
|
isSpace = isSpace
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -85,6 +85,7 @@ internal fun createRoomListRoomSummary(
|
||||||
heroes: List<AvatarData> = emptyList(),
|
heroes: List<AvatarData> = emptyList(),
|
||||||
timestamp: String? = null,
|
timestamp: String? = null,
|
||||||
isTombstoned: Boolean = false,
|
isTombstoned: Boolean = false,
|
||||||
|
isSpace: Boolean = false,
|
||||||
) = RoomListRoomSummary(
|
) = RoomListRoomSummary(
|
||||||
id = A_ROOM_ID.value,
|
id = A_ROOM_ID.value,
|
||||||
roomId = A_ROOM_ID,
|
roomId = A_ROOM_ID,
|
||||||
|
|
@ -106,4 +107,5 @@ internal fun createRoomListRoomSummary(
|
||||||
isDm = false,
|
isDm = false,
|
||||||
heroes = heroes.toPersistentList(),
|
heroes = heroes.toPersistentList(),
|
||||||
isTombstoned = isTombstoned,
|
isTombstoned = isTombstoned,
|
||||||
|
isSpace = isSpace
|
||||||
)
|
)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue