From 641dc27f44d1b0886fa1cc8d9bd649260200ae6c Mon Sep 17 00:00:00 2001 From: aisu Date: Sun, 16 Jun 2024 13:10:29 -0400 Subject: [PATCH] merge: #6 --- .../java/chat/revolt/components/generic/FormTextField.kt | 4 +++- app/src/main/java/chat/revolt/screens/login/LoginScreen.kt | 3 +++ .../chat/revolt/screens/register/RegisterDetailsScreen.kt | 5 ++++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/chat/revolt/components/generic/FormTextField.kt b/app/src/main/java/chat/revolt/components/generic/FormTextField.kt index 34d12ef0..993ed542 100644 --- a/app/src/main/java/chat/revolt/components/generic/FormTextField.kt +++ b/app/src/main/java/chat/revolt/components/generic/FormTextField.kt @@ -5,6 +5,7 @@ import androidx.compose.material3.Text import androidx.compose.material3.TextField import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier +import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.text.input.KeyboardType import androidx.compose.ui.text.input.PasswordVisualTransformation import androidx.compose.ui.text.input.VisualTransformation @@ -19,6 +20,7 @@ fun FormTextField( onChange: (it: String) -> Unit, modifier: Modifier = Modifier, type: KeyboardType = KeyboardType.Text, + action: ImeAction = ImeAction.Done, supportingText: @Composable (() -> Unit)? = null, singleLine: Boolean = true, enabled: Boolean = true @@ -27,7 +29,7 @@ fun FormTextField( value = value, onValueChange = onChange, singleLine = singleLine, - keyboardOptions = KeyboardOptions(keyboardType = type), + keyboardOptions = KeyboardOptions(keyboardType = type, imeAction = action), visualTransformation = if (type == KeyboardType.Password) PasswordVisualTransformation() else VisualTransformation.None, label = { Text(label) }, supportingText = supportingText, diff --git a/app/src/main/java/chat/revolt/screens/login/LoginScreen.kt b/app/src/main/java/chat/revolt/screens/login/LoginScreen.kt index bd3dfb06..895cddbf 100644 --- a/app/src/main/java/chat/revolt/screens/login/LoginScreen.kt +++ b/app/src/main/java/chat/revolt/screens/login/LoginScreen.kt @@ -28,6 +28,7 @@ import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.testTag import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.text.input.KeyboardType import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp @@ -200,6 +201,8 @@ fun LoginScreen(navController: NavController, viewModel: LoginViewModel = hiltVi FormTextField( value = viewModel.email, label = stringResource(R.string.email), + type = KeyboardType.Email, + action = ImeAction.Next, onChange = viewModel::setEmail, modifier = Modifier.padding(vertical = 25.dp) ) diff --git a/app/src/main/java/chat/revolt/screens/register/RegisterDetailsScreen.kt b/app/src/main/java/chat/revolt/screens/register/RegisterDetailsScreen.kt index 718b3eee..5edd4c0c 100644 --- a/app/src/main/java/chat/revolt/screens/register/RegisterDetailsScreen.kt +++ b/app/src/main/java/chat/revolt/screens/register/RegisterDetailsScreen.kt @@ -25,6 +25,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.text.input.KeyboardType import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp @@ -161,7 +162,9 @@ fun RegisterDetailsScreen( FormTextField( value = viewModel.email, onChange = { viewModel.email = it }, - label = stringResource(R.string.register_email) + label = stringResource(R.string.register_email), + type = KeyboardType.Email, + action = ImeAction.Next ) Text( text = stringResource(R.string.register_email_verification_hint),