From 53ec1aa8a50bf364314d0bddfabd6cd116e89d84 Mon Sep 17 00:00:00 2001 From: OxygenCobalt Date: Fri, 26 Mar 2021 15:22:28 -0600 Subject: [PATCH] Improve dialog layouts Improve the dialog layouts so that only the recyclerview scrolls when it cannot fit instead of the entire layout being forced to scroll. --- app/build.gradle | 5 +- .../settings/blacklist/BlacklistDialog.kt | 10 +- .../auxio/settings/ui/LifecycleDialog.kt | 2 +- app/src/main/res/layout/dialog_accent.xml | 50 +++++----- app/src/main/res/layout/dialog_blacklist.xml | 94 +++++++++---------- app/src/main/res/values-de/strings.xml | 1 - app/src/main/res/values/strings.xml | 3 +- gradle.properties | 2 +- 8 files changed, 85 insertions(+), 82 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 72c87b59a..b894526ec 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,10 +9,11 @@ android { defaultConfig { applicationId "org.oxycblt.auxio" + versionName "1.3.3" + versionCode 5 + minSdkVersion 21 targetSdkVersion 30 - versionCode 5 - versionName "1.3.3" buildFeatures { dataBinding true diff --git a/app/src/main/java/org/oxycblt/auxio/settings/blacklist/BlacklistDialog.kt b/app/src/main/java/org/oxycblt/auxio/settings/blacklist/BlacklistDialog.kt index f2e9a3e76..f35ecc2b0 100644 --- a/app/src/main/java/org/oxycblt/auxio/settings/blacklist/BlacklistDialog.kt +++ b/app/src/main/java/org/oxycblt/auxio/settings/blacklist/BlacklistDialog.kt @@ -107,7 +107,9 @@ class BlacklistDialog : LifecycleDialog() { blacklistModel.loadDatabasePaths() } - private fun addDocTreePath(uri: Uri) { + private fun addDocTreePath(uri: Uri?) { + uri ?: return + val path = parseDocTreePath(uri) if (path != null) { @@ -126,10 +128,8 @@ class BlacklistDialog : LifecycleDialog() { // Turn it into a semi-usable path val typeAndPath = DocumentsContract.getTreeDocumentId(docUri).split(":") - // We only support the main drive since that's all we can get from MediaColumns.DATA. - // We also check if this directory actually has multiple parts, if it isn't, then its - // the root directory and it shouldn't be supported. - if (typeAndPath[0] == "primary" && typeAndPath.size == 2) { + // Only the main drive is supported, since thats all we can get from MediaColumns.DATA + if (typeAndPath[0] == "primary") { return getRootPath() + "/" + typeAndPath.last() } diff --git a/app/src/main/java/org/oxycblt/auxio/settings/ui/LifecycleDialog.kt b/app/src/main/java/org/oxycblt/auxio/settings/ui/LifecycleDialog.kt index 929edcc59..0354842df 100644 --- a/app/src/main/java/org/oxycblt/auxio/settings/ui/LifecycleDialog.kt +++ b/app/src/main/java/org/oxycblt/auxio/settings/ui/LifecycleDialog.kt @@ -11,7 +11,7 @@ import com.google.android.material.dialog.MaterialAlertDialogBuilder * [DialogFragment] that replicates the Fragment lifecycle in regards to [AlertDialog], which * doesn't seem to set the view from onCreateView correctly. */ -abstract class LifecycleDialog() : DialogFragment() { +abstract class LifecycleDialog : DialogFragment() { override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { return MaterialAlertDialogBuilder(requireActivity(), theme).create() } diff --git a/app/src/main/res/layout/dialog_accent.xml b/app/src/main/res/layout/dialog_accent.xml index 0c3808071..e64352f6c 100644 --- a/app/src/main/res/layout/dialog_accent.xml +++ b/app/src/main/res/layout/dialog_accent.xml @@ -3,11 +3,11 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"> - -