From 0b9724af846dbfc354665f64c8b59e1a691f5cb1 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 15 May 2024 09:46:01 +0200 Subject: [PATCH] EditUserProfileState.userId cannot be null. It simplifies a bit the codebase. --- .../user/editprofile/EditUserProfileState.kt | 2 +- .../impl/user/editprofile/EditUserProfileView.kt | 16 +++++++--------- .../matrix/ui/components/EditableAvatarView.kt | 12 +++++------- 3 files changed, 13 insertions(+), 17 deletions(-) diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/user/editprofile/EditUserProfileState.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/user/editprofile/EditUserProfileState.kt index c37dba8c3a..d85936d5d8 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/user/editprofile/EditUserProfileState.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/user/editprofile/EditUserProfileState.kt @@ -24,7 +24,7 @@ import io.element.android.libraries.permissions.api.PermissionsState import kotlinx.collections.immutable.ImmutableList data class EditUserProfileState( - val userId: UserId?, + val userId: UserId, val displayName: String, val userAvatarUrl: Uri?, val avatarActions: ImmutableList, diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/user/editprofile/EditUserProfileView.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/user/editprofile/EditUserProfileView.kt index b9a9c61030..58d2afb77a 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/user/editprofile/EditUserProfileView.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/user/editprofile/EditUserProfileView.kt @@ -114,7 +114,7 @@ fun EditUserProfileView( ) { Spacer(modifier = Modifier.height(24.dp)) EditableAvatarView( - matrixId = state.userId?.value, + matrixId = state.userId.value, displayName = state.displayName, avatarUrl = state.userAvatarUrl, avatarSize = AvatarSize.RoomHeader, @@ -122,14 +122,12 @@ fun EditUserProfileView( modifier = Modifier.align(Alignment.CenterHorizontally), ) Spacer(modifier = Modifier.height(16.dp)) - state.userId?.let { - Text( - modifier = Modifier.fillMaxWidth(), - text = it.value, - style = ElementTheme.typography.fontBodyLgRegular, - textAlign = TextAlign.Center, - ) - } + Text( + modifier = Modifier.fillMaxWidth(), + text = state.userId.value, + style = ElementTheme.typography.fontBodyLgRegular, + textAlign = TextAlign.Center, + ) Spacer(modifier = Modifier.height(40.dp)) LabelledOutlinedTextField( label = stringResource(R.string.screen_edit_profile_display_name), diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/EditableAvatarView.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/EditableAvatarView.kt index ced7b87e8c..ad35373895 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/EditableAvatarView.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/EditableAvatarView.kt @@ -46,7 +46,7 @@ import io.element.android.libraries.designsystem.theme.components.Icon @Composable fun EditableAvatarView( - matrixId: String?, + matrixId: String, displayName: String?, avatarUrl: Uri?, avatarSize: AvatarSize, @@ -65,12 +65,10 @@ fun EditableAvatarView( ) { when (avatarUrl?.scheme) { null, "mxc" -> { - matrixId?.let { - Avatar( - avatarData = AvatarData(it, displayName, avatarUrl?.toString(), size = avatarSize), - modifier = Modifier.fillMaxSize(), - ) - } + Avatar( + avatarData = AvatarData(matrixId, displayName, avatarUrl?.toString(), size = avatarSize), + modifier = Modifier.fillMaxSize(), + ) } else -> { UnsavedAvatar(