This commit is contained in:
aisu 2024-06-16 13:10:29 -04:00 committed by GitHub
parent 25eae779e6
commit 641dc27f44
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 10 additions and 2 deletions

View File

@ -5,6 +5,7 @@ import androidx.compose.material3.Text
import androidx.compose.material3.TextField import androidx.compose.material3.TextField
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier 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.KeyboardType
import androidx.compose.ui.text.input.PasswordVisualTransformation import androidx.compose.ui.text.input.PasswordVisualTransformation
import androidx.compose.ui.text.input.VisualTransformation import androidx.compose.ui.text.input.VisualTransformation
@ -19,6 +20,7 @@ fun FormTextField(
onChange: (it: String) -> Unit, onChange: (it: String) -> Unit,
modifier: Modifier = Modifier, modifier: Modifier = Modifier,
type: KeyboardType = KeyboardType.Text, type: KeyboardType = KeyboardType.Text,
action: ImeAction = ImeAction.Done,
supportingText: @Composable (() -> Unit)? = null, supportingText: @Composable (() -> Unit)? = null,
singleLine: Boolean = true, singleLine: Boolean = true,
enabled: Boolean = true enabled: Boolean = true
@ -27,7 +29,7 @@ fun FormTextField(
value = value, value = value,
onValueChange = onChange, onValueChange = onChange,
singleLine = singleLine, singleLine = singleLine,
keyboardOptions = KeyboardOptions(keyboardType = type), keyboardOptions = KeyboardOptions(keyboardType = type, imeAction = action),
visualTransformation = if (type == KeyboardType.Password) PasswordVisualTransformation() else VisualTransformation.None, visualTransformation = if (type == KeyboardType.Password) PasswordVisualTransformation() else VisualTransformation.None,
label = { Text(label) }, label = { Text(label) },
supportingText = supportingText, supportingText = supportingText,

View File

@ -28,6 +28,7 @@ import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.platform.testTag import androidx.compose.ui.platform.testTag
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight 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.input.KeyboardType
import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@ -200,6 +201,8 @@ fun LoginScreen(navController: NavController, viewModel: LoginViewModel = hiltVi
FormTextField( FormTextField(
value = viewModel.email, value = viewModel.email,
label = stringResource(R.string.email), label = stringResource(R.string.email),
type = KeyboardType.Email,
action = ImeAction.Next,
onChange = viewModel::setEmail, onChange = viewModel::setEmail,
modifier = Modifier.padding(vertical = 25.dp) modifier = Modifier.padding(vertical = 25.dp)
) )

View File

@ -25,6 +25,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight 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.input.KeyboardType
import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@ -161,7 +162,9 @@ fun RegisterDetailsScreen(
FormTextField( FormTextField(
value = viewModel.email, value = viewModel.email,
onChange = { viewModel.email = it }, onChange = { viewModel.email = it },
label = stringResource(R.string.register_email) label = stringResource(R.string.register_email),
type = KeyboardType.Email,
action = ImeAction.Next
) )
Text( Text(
text = stringResource(R.string.register_email_verification_hint), text = stringResource(R.string.register_email_verification_hint),