From 078a1a9efe8ac4796ecfe8d0f5605eacb88bf9b1 Mon Sep 17 00:00:00 2001 From: Leandro Schaguhn Date: Wed, 11 Jun 2025 17:36:52 +0200 Subject: [PATCH] button enabled/disabled logic --- .../java/de/lelehier/keeper/screens/home_screen.kt | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/de/lelehier/keeper/screens/home_screen.kt b/app/src/main/java/de/lelehier/keeper/screens/home_screen.kt index b00eedd..ad1531b 100644 --- a/app/src/main/java/de/lelehier/keeper/screens/home_screen.kt +++ b/app/src/main/java/de/lelehier/keeper/screens/home_screen.kt @@ -71,7 +71,15 @@ fun homeScreen(paddingValues: PaddingValues) { } } - Button(onClick = {currentScreen = nextScreen}, modifier = Modifier.padding(top = 24.dp)) { + Button( + onClick = {currentScreen = nextScreen}, + modifier = Modifier.padding(top = 24.dp), + enabled = when(currentScreen) { + 0 -> isValidUrl(serverURL) + 1 -> username.isNotEmpty() && password.isNotEmpty() + else -> false + }, + ) { Row() { Text(text = "Next") } @@ -122,7 +130,7 @@ fun serverDialog(serverURL: String, updateServerURL: (newServerURL: String) -> U }, keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Uri), supportingText = { - AnimatedVisibility(!isValidUrl(serverURL)) { + AnimatedVisibility(!isValidUrl(serverURL) && serverURL != "") { Text( text = "No valid URL", color = MaterialTheme.colorScheme.error