feat: autofill in login screen

Signed-off-by: Infi <infi@infi.sh>
This commit is contained in:
Infi 2025-03-21 20:17:20 +01:00
parent 79836c82ad
commit 8b495f78dd
1 changed files with 11 additions and 1 deletions

View File

@ -31,10 +31,13 @@ import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.autofill.ContentType
import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.platform.testTag import androidx.compose.ui.platform.testTag
import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.semantics.contentType
import androidx.compose.ui.semantics.semantics
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.ImeAction
import androidx.compose.ui.text.input.KeyboardType import androidx.compose.ui.text.input.KeyboardType
@ -225,7 +228,11 @@ fun LoginScreen(navController: NavController, viewModel: LoginViewModel = hiltVi
type = KeyboardType.Email, type = KeyboardType.Email,
action = ImeAction.Next, action = ImeAction.Next,
onChange = viewModel::setEmail, onChange = viewModel::setEmail,
modifier = Modifier.padding(vertical = 25.dp) modifier = Modifier
.padding(vertical = 25.dp)
.semantics {
contentType = ContentType.EmailAddress
}
) )
SecureTextField( SecureTextField(
passwordTextFieldState, passwordTextFieldState,
@ -259,6 +266,9 @@ fun LoginScreen(navController: NavController, viewModel: LoginViewModel = hiltVi
} }
} }
}, },
modifier = Modifier.semantics {
contentType = ContentType.Password
}
) )
AnyLink( AnyLink(