NextcloudLoginFlowFragment: minor changes (sync bitfireAT/davx5#501)

---------

Co-authored-by: Ricki Hirner <hirner@bitfire.at>
This commit is contained in:
Sunik Kupfer 2024-01-03 11:23:42 +01:00 committed by Ricki Hirner
parent e5c73bead5
commit 20652b9325
No known key found for this signature in database
GPG key ID: 79A019FCAAEDD3AA

View file

@ -60,6 +60,7 @@ import com.google.android.material.snackbar.Snackbar
import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.android.AndroidEntryPoint
import dagger.hilt.components.SingletonComponent
import dagger.multibindings.IntKey
import dagger.multibindings.IntoMap
@ -78,6 +79,7 @@ import java.net.URI
import java.util.logging.Level
import javax.inject.Inject
@AndroidEntryPoint
class NextcloudLoginFlowFragment: Fragment() {
companion object {
@ -92,6 +94,16 @@ class NextcloudLoginFlowFragment: Fragment() {
* server URL returned by Login Flow without further processing. */
const val EXTRA_DAV_PATH = "davPath"
const val DAV_PATH_DEFAULT = "/remote.php/dav"
const val ARG_BASE_URL = "baseUrl"
fun newInstance(baseUrl: String? = null): NextcloudLoginFlowFragment =
NextcloudLoginFlowFragment().apply {
arguments = Bundle(1).apply {
putString(ARG_BASE_URL, baseUrl)
}
}
}
val loginModel by activityViewModels<LoginModel>()
@ -105,7 +117,8 @@ class NextcloudLoginFlowFragment: Fragment() {
@SuppressLint("SetJavaScriptEnabled")
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
val entryUrl = requireActivity().intent.data?.toString()?.toHttpUrlOrNull()
val baseUrl = arguments?.getString(ARG_BASE_URL)
val entryUrl = (requireActivity().intent.data?.toString() ?: baseUrl)?.toHttpUrlOrNull()
val view = ComposeView(requireActivity()).apply {
setContent {
@ -374,7 +387,8 @@ fun NextcloudLoginFlowComposable(
val entryUrlStr = remember { mutableStateOf(providedEntryUrl?.toString() ?: "") }
val entryUrl = remember { mutableStateOf<HttpUrl?>(providedEntryUrl) }
OutlinedTextField(entryUrlStr.value,
OutlinedTextField(
value = entryUrlStr.value,
onValueChange = { newUrlStr ->
entryUrlStr.value = newUrlStr