From 8a2706d70b2596b0f9a5b95e7dbd7831cedc1ea5 Mon Sep 17 00:00:00 2001 From: Koitharu Date: Wed, 4 Jan 2023 13:16:43 +0200 Subject: [PATCH] Hide prefetch option if not available --- .../kotatsu/settings/ContentSettingsFragment.kt | 14 +++++++++++--- app/src/main/res/xml/pref_content.xml | 7 +++++-- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/org/koitharu/kotatsu/settings/ContentSettingsFragment.kt b/app/src/main/java/org/koitharu/kotatsu/settings/ContentSettingsFragment.kt index 83a5f231a..f8aa998d8 100644 --- a/app/src/main/java/org/koitharu/kotatsu/settings/ContentSettingsFragment.kt +++ b/app/src/main/java/org/koitharu/kotatsu/settings/ContentSettingsFragment.kt @@ -9,14 +9,13 @@ import androidx.preference.ListPreference import androidx.preference.Preference import com.google.android.material.snackbar.Snackbar import dagger.hilt.android.AndroidEntryPoint -import java.io.File -import javax.inject.Inject import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import kotlinx.coroutines.withContext import org.koitharu.kotatsu.R import org.koitharu.kotatsu.base.ui.BasePreferenceFragment import org.koitharu.kotatsu.base.ui.dialog.StorageSelectDialog +import org.koitharu.kotatsu.core.cache.ContentCache import org.koitharu.kotatsu.core.network.DoHProvider import org.koitharu.kotatsu.core.prefs.AppSettings import org.koitharu.kotatsu.local.data.LocalStorageManager @@ -26,6 +25,8 @@ import org.koitharu.kotatsu.sync.ui.SyncSettingsIntent import org.koitharu.kotatsu.utils.ext.getStorageName import org.koitharu.kotatsu.utils.ext.setDefaultValueCompat import org.koitharu.kotatsu.utils.ext.viewLifecycleScope +import java.io.File +import javax.inject.Inject @AndroidEntryPoint class ContentSettingsFragment : @@ -36,9 +37,12 @@ class ContentSettingsFragment : @Inject lateinit var storageManager: LocalStorageManager + @Inject + lateinit var contentCache: ContentCache + override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { addPreferencesFromResource(R.xml.pref_content) - + findPreference(AppSettings.KEY_PREFETCH_CONTENT)?.isVisible = contentCache.isCachingEnabled findPreference(AppSettings.KEY_DOWNLOADS_PARALLELISM)?.run { summary = value.toString() setOnPreferenceChangeListener { preference, newValue -> @@ -82,11 +86,13 @@ class ContentSettingsFragment : AppSettings.KEY_LOCAL_STORAGE -> { findPreference(key)?.bindStorageName() } + AppSettings.KEY_SUGGESTIONS -> { findPreference(AppSettings.KEY_SUGGESTIONS)?.setSummary( if (settings.isSuggestionsEnabled) R.string.enabled else R.string.disabled, ) } + AppSettings.KEY_SOURCES_HIDDEN -> { bindRemoteSourcesSummary() } @@ -104,6 +110,7 @@ class ContentSettingsFragment : .show() true } + AppSettings.KEY_SYNC -> { val am = AccountManager.get(requireContext()) val accountType = getString(R.string.account_type_sync) @@ -119,6 +126,7 @@ class ContentSettingsFragment : } true } + else -> super.onPreferenceTreeClick(preference) } } diff --git a/app/src/main/res/xml/pref_content.xml b/app/src/main/res/xml/pref_content.xml index e060edc5d..1c94f2674 100644 --- a/app/src/main/res/xml/pref_content.xml +++ b/app/src/main/res/xml/pref_content.xml @@ -1,7 +1,8 @@ + xmlns:app="http://schemas.android.com/apk/res-auto" + xmlns:tools="http://schemas.android.com/tools"> + app:isPreferenceVisible="false" + app:useSimpleSummaryProvider="true" + tools:isPreferenceVisible="true" />