From 9b511d2f8fc194ece633be90a5545153d6022b6d Mon Sep 17 00:00:00 2001 From: tom5079 Date: Tue, 8 Jun 2021 09:08:24 +0900 Subject: [PATCH] Fixed radio button acting up --- .../ui/dialog/DownloadLocationDialogFragment.kt | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/xyz/quaver/pupil/ui/dialog/DownloadLocationDialogFragment.kt b/app/src/main/java/xyz/quaver/pupil/ui/dialog/DownloadLocationDialogFragment.kt index fec74930..e6a03cff 100644 --- a/app/src/main/java/xyz/quaver/pupil/ui/dialog/DownloadLocationDialogFragment.kt +++ b/app/src/main/java/xyz/quaver/pupil/ui/dialog/DownloadLocationDialogFragment.kt @@ -75,6 +75,15 @@ class DownloadLocationDialogFragment : DialogFragment() { if (key == null) entries[key]!!.locationAvailable.text = downloadFolder } } + } else { + val downloadFolder = DownloadManager.getInstance(context ?: return@registerForActivityResult).downloadFolder.canonicalPath + val key = entries.keys.firstOrNull { it?.canonicalPath == downloadFolder } + if (key == null) + entries[key]!!.locationAvailable.text = downloadFolder + else { + entries[null]!!.button.isChecked = false + entries[key]!!.button.isChecked = true + } } } @@ -120,8 +129,8 @@ class DownloadLocationDialogFragment : DialogFragment() { byteToString(dir.freeSpace) ) root.setOnClickListener { - entries.values.forEach { _ -> - button.isChecked = false + entries.values.forEach { entry -> + entry.button.isChecked = false } button.performClick() Preferences["download_folder"] = dir.toUri().toString() @@ -133,8 +142,8 @@ class DownloadLocationDialogFragment : DialogFragment() { DownloadLocationItemBinding.inflate(layoutInflater, binding.root, true).apply { locationType.text = requireContext().getString(R.string.settings_download_folder_custom) root.setOnClickListener { - entries.values.forEach { - it.button.isChecked = false + entries.values.forEach { entry -> + entry.button.isChecked = false } button.performClick()