From 30fbb124a5af050668cd65f537306b9f57360d16 Mon Sep 17 00:00:00 2001 From: ganfra Date: Tue, 25 Feb 2025 20:27:54 +0100 Subject: [PATCH] feat(join by alias) : add TextFieldValidity.None instead of nullable --- .../createroom/impl/joinbyaddress/JoinRoomByAddressView.kt | 2 +- .../android/features/rageshake/impl/bugreport/BugReportView.kt | 2 +- .../impl/reset/password/ResetIdentityPasswordView.kt | 2 +- .../libraries/designsystem/theme/components/TextField.kt | 3 ++- .../libraries/matrix/ui/room/address/RoomAddressField.kt | 2 +- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/joinbyaddress/JoinRoomByAddressView.kt b/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/joinbyaddress/JoinRoomByAddressView.kt index 6a4942af16..c256f5140c 100644 --- a/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/joinbyaddress/JoinRoomByAddressView.kt +++ b/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/joinbyaddress/JoinRoomByAddressView.kt @@ -107,7 +107,7 @@ private fun RoomAddressField( RoomAddressState.Unknown, RoomAddressState.Resolving -> stringResource(R.string.screen_start_chat_join_room_by_address_supporting_text) }, validity = when (addressState) { - RoomAddressState.Unknown, RoomAddressState.Resolving -> null + RoomAddressState.Unknown, RoomAddressState.Resolving -> TextFieldValidity.None RoomAddressState.Invalid, RoomAddressState.RoomNotFound -> TextFieldValidity.Invalid is RoomAddressState.RoomFound -> TextFieldValidity.Valid }, diff --git a/features/rageshake/impl/src/main/kotlin/io/element/android/features/rageshake/impl/bugreport/BugReportView.kt b/features/rageshake/impl/src/main/kotlin/io/element/android/features/rageshake/impl/bugreport/BugReportView.kt index cebf6a0ae4..2272e8fe94 100644 --- a/features/rageshake/impl/src/main/kotlin/io/element/android/features/rageshake/impl/bugreport/BugReportView.kt +++ b/features/rageshake/impl/src/main/kotlin/io/element/android/features/rageshake/impl/bugreport/BugReportView.kt @@ -91,7 +91,7 @@ fun BugReportView( keyboardController?.hide() }), minLines = 3, - validity = if (state.isDescriptionInError) TextFieldValidity.Invalid else null, + validity = if (state.isDescriptionInError) TextFieldValidity.Invalid else TextFieldValidity.None, ) } Spacer(modifier = Modifier.height(16.dp)) diff --git a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/reset/password/ResetIdentityPasswordView.kt b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/reset/password/ResetIdentityPasswordView.kt index aedb962a64..b8545a271c 100644 --- a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/reset/password/ResetIdentityPasswordView.kt +++ b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/reset/password/ResetIdentityPasswordView.kt @@ -100,7 +100,7 @@ private fun Content(text: String, onTextChange: (String) -> Unit, hasError: Bool Icon(imageVector = image, description) } }, - validity = if (hasError) TextFieldValidity.Invalid else null, + validity = if (hasError) TextFieldValidity.Invalid else TextFieldValidity.None, supportingText = if (hasError) { stringResource(R.string.screen_reset_encryption_password_error) } else { diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/TextField.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/TextField.kt index 63a5b166ac..51041f8168 100644 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/TextField.kt +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/TextField.kt @@ -58,7 +58,7 @@ fun TextField( placeholder: String? = null, leadingIcon: @Composable (() -> Unit)? = null, trailingIcon: @Composable (() -> Unit)? = null, - validity: TextFieldValidity? = null, + validity: TextFieldValidity = TextFieldValidity.None, enabled: Boolean = true, readOnly: Boolean = false, singleLine: Boolean = false, @@ -288,6 +288,7 @@ private fun SupportingTextLayout(validity: TextFieldValidity?, supportingText: S } enum class TextFieldValidity { + None, Invalid, Valid } diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/address/RoomAddressField.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/address/RoomAddressField.kt index fab4d153ec..f97e2ff766 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/address/RoomAddressField.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/address/RoomAddressField.kt @@ -59,7 +59,7 @@ fun RoomAddressField( }, validity = when (addressValidity) { RoomAddressValidity.InvalidSymbols, RoomAddressValidity.NotAvailable -> TextFieldValidity.Invalid - else -> null + else -> TextFieldValidity.None }, onValueChange = onAddressChange, singleLine = true,