Fix RoomDetailsEditView avatar picker for spaces
- Use correct AvatarType based on whether editing a space or room - Add roomRawName to remember key to update avatar when name changes - Respect canChangeAvatar state to disable picker when not permitted
This commit is contained in:
@@ -101,9 +101,9 @@ fun RoomDetailsEditView(
|
||||
.verticalScroll(rememberScrollState())
|
||||
) {
|
||||
Spacer(modifier = Modifier.height(24.dp))
|
||||
val avatarPickerState = remember(state.roomAvatarUrl) {
|
||||
val avatarPickerState = remember(state.roomAvatarUrl, state.roomRawName) {
|
||||
val size = AvatarSize.EditRoomDetails
|
||||
val type = AvatarType.Room()
|
||||
val type = if (state.isSpace) AvatarType.Space() else AvatarType.Room()
|
||||
AvatarPickerState.Selected(
|
||||
avatarData = AvatarData(id = state.roomId.value, name = state.roomRawName, size = size, url = state.roomAvatarUrl),
|
||||
type = type
|
||||
@@ -112,6 +112,7 @@ fun RoomDetailsEditView(
|
||||
AvatarPickerView(
|
||||
state = avatarPickerState,
|
||||
onClick = ::onAvatarClick,
|
||||
enabled = state.canChangeAvatar,
|
||||
modifier = Modifier.align(Alignment.CenterHorizontally),
|
||||
)
|
||||
Spacer(modifier = Modifier.height(32.dp))
|
||||
|
||||
Reference in New Issue
Block a user