diff --git a/android/app/src/main/java/com/fabledsword/minstrel/auth/ui/ServerUrlScreen.kt b/android/app/src/main/java/com/fabledsword/minstrel/auth/ui/ServerUrlScreen.kt index 5a95d863..04d90763 100644 --- a/android/app/src/main/java/com/fabledsword/minstrel/auth/ui/ServerUrlScreen.kt +++ b/android/app/src/main/java/com/fabledsword/minstrel/auth/ui/ServerUrlScreen.kt @@ -51,7 +51,17 @@ class ServerUrlViewModel @Inject constructor( ) : ViewModel() { private val internal = MutableStateFlow( - ServerUrlFormState(url = authStore.baseUrl.value), + // Pre-fill ONLY if the user has previously saved a real URL — + // the DEFAULT_BASE_URL placeholder (`http://localhost:8080`) is + // an internal HTTP-client fallback, not something a user + // typed. Leaving the field empty lets the OutlinedTextField's + // placeholder ("https://minstrel.example.com") show through + // so the user can just type without first having to clear. + ServerUrlFormState( + url = authStore.baseUrl.value + .takeIf { it != AuthStore.DEFAULT_BASE_URL } + .orEmpty(), + ), ) val state: StateFlow = internal.asStateFlow()