diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 5553ccfa46..29f8ff97db 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -117,14 +117,14 @@ dependencies { implementation("com.google.android.material:material:1.5.0") implementation("androidx.webkit:webkit:1.4.0") implementation("androidx.recyclerview:recyclerview:1.2.1") - implementation("androidx.preference:preference:1.1.1") + implementation("androidx.preference:preference:1.2.0") implementation("androidx.annotation:annotation:1.3.0") implementation("androidx.browser:browser:1.4.0") implementation("androidx.biometric:biometric:1.1.0") implementation("androidx.palette:palette:1.0.0") implementation("androidx.core:core-ktx:1.7.0") - implementation("androidx.constraintlayout:constraintlayout:2.1.2") + implementation("androidx.constraintlayout:constraintlayout:2.1.3") implementation("androidx.multidex:multidex:2.0.1") @@ -142,7 +142,7 @@ dependencies { implementation("com.github.pwittchen:reactivenetwork:0.13.0") // Coroutines - implementation("com.github.tfcporciuncula:flow-preferences:1.3.4") + implementation("com.fredporciuncula:flow-preferences:1.6.0") // Network client implementation("com.squareup.okhttp3:okhttp:${Versions.okhttp}") diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt index a5b1242e87..dd4bbd12a9 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt @@ -5,9 +5,9 @@ import android.net.Uri import android.os.Environment import androidx.appcompat.app.AppCompatDelegate import androidx.preference.PreferenceManager +import com.fredporciuncula.flow.preferences.FlowSharedPreferences +import com.fredporciuncula.flow.preferences.Preference import com.google.android.material.color.DynamicColors -import com.tfcporciuncula.flow.FlowSharedPreferences -import com.tfcporciuncula.flow.Preference import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.data.database.models.Manga import eu.kanade.tachiyomi.data.track.TrackService diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/category/ManageCategoryDialog.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/category/ManageCategoryDialog.kt index 2753a3c334..4c455d0592 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/category/ManageCategoryDialog.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/category/ManageCategoryDialog.kt @@ -6,8 +6,8 @@ import android.content.DialogInterface import android.os.Bundle import androidx.core.view.isVisible import androidx.core.widget.addTextChangedListener +import com.fredporciuncula.flow.preferences.Preference import com.google.android.material.dialog.MaterialAlertDialogBuilder -import com.tfcporciuncula.flow.Preference import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.data.database.DatabaseHelper import eu.kanade.tachiyomi.data.database.models.Category diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt index 51e447b033..e915484978 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt @@ -41,10 +41,10 @@ import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import com.bluelinelabs.conductor.ControllerChangeHandler import com.bluelinelabs.conductor.ControllerChangeType +import com.fredporciuncula.flow.preferences.Preference import com.github.florent37.viewtooltip.ViewTooltip import com.google.android.material.snackbar.BaseTransientBottomBar import com.google.android.material.snackbar.Snackbar -import com.tfcporciuncula.flow.Preference import eu.davidea.flexibleadapter.FlexibleAdapter import eu.davidea.flexibleadapter.SelectableAdapter import eu.davidea.flexibleadapter.items.IFlexible diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/filter/FilterTagGroup.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/filter/FilterTagGroup.kt index 528e5abd68..6a81bf8fcf 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/filter/FilterTagGroup.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/filter/FilterTagGroup.kt @@ -6,7 +6,7 @@ import android.view.View import android.view.ViewGroup import android.widget.LinearLayout import androidx.core.view.isVisible -import com.tfcporciuncula.flow.Preference +import com.fredporciuncula.flow.preferences.Preference import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.databinding.FilterTagGroupBinding import eu.kanade.tachiyomi.util.system.dpToPx diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/migration/manga/design/MigrationBottomSheetDialog.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/migration/manga/design/MigrationBottomSheetDialog.kt index ec1448a428..48f5130946 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/migration/manga/design/MigrationBottomSheetDialog.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/migration/manga/design/MigrationBottomSheetDialog.kt @@ -12,7 +12,7 @@ import android.widget.Toast import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.view.isVisible import com.bluelinelabs.conductor.Controller -import com.tfcporciuncula.flow.Preference +import com.fredporciuncula.flow.preferences.Preference import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.data.preference.PreferencesHelper import eu.kanade.tachiyomi.databinding.MigrationBottomSheetBinding diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ViewerConfig.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ViewerConfig.kt index d049bdb648..cdf9f3570f 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ViewerConfig.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ViewerConfig.kt @@ -1,6 +1,6 @@ package eu.kanade.tachiyomi.ui.reader.viewer -import com.tfcporciuncula.flow.Preference +import com.fredporciuncula.flow.preferences.Preference import eu.kanade.tachiyomi.data.preference.PreferencesHelper import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.flow.launchIn diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaAdapter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaAdapter.kt index ff0067ee75..0a57fc04ad 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaAdapter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/recents/RecentMangaAdapter.kt @@ -1,7 +1,7 @@ package eu.kanade.tachiyomi.ui.recents import androidx.recyclerview.widget.ItemTouchHelper -import com.tfcporciuncula.flow.Preference +import com.fredporciuncula.flow.preferences.Preference import eu.davidea.flexibleadapter.items.IFlexible import eu.kanade.tachiyomi.data.preference.PreferencesHelper import eu.kanade.tachiyomi.ui.manga.chapter.BaseChapterAdapter diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/PreferenceDSL.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/PreferenceDSL.kt index 0beecea911..a618f33a7c 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/PreferenceDSL.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/PreferenceDSL.kt @@ -2,8 +2,8 @@ package eu.kanade.tachiyomi.ui.setting import android.app.Activity import androidx.annotation.StringRes +import androidx.appcompat.content.res.AppCompatResources import androidx.biometric.BiometricPrompt -import androidx.core.graphics.drawable.DrawableCompat import androidx.fragment.app.FragmentActivity import androidx.preference.CheckBoxPreference import androidx.preference.DialogPreference @@ -16,7 +16,6 @@ import androidx.preference.PreferenceGroup import androidx.preference.PreferenceManager import androidx.preference.PreferenceScreen import androidx.preference.SwitchPreferenceCompat -import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.util.system.AuthenticatorUtil import eu.kanade.tachiyomi.util.system.AuthenticatorUtil.isAuthenticationSupported @@ -169,12 +168,12 @@ inline fun Preference.onChange(crossinline block: (Any?) -> Boolean) { setOnPreferenceChangeListener { _, newValue -> block(newValue) } } -inline fun Preference.bindTo(preference: com.tfcporciuncula.flow.Preference) { +inline fun Preference.bindTo(preference: com.fredporciuncula.flow.preferences.Preference) { key = preference.key defaultValue = preference.defaultValue } -inline fun ListPreference.bindTo(preference: com.tfcporciuncula.flow.Preference) { +inline fun ListPreference.bindTo(preference: com.fredporciuncula.flow.preferences.Preference) { key = preference.key // ListPreferences persist values as strings, even when we're using our IntListPreference defaultValue = preference.defaultValue.toString() @@ -220,7 +219,7 @@ var Preference.titleRes: Int var Preference.iconRes: Int get() = 0 // set only - set(value) { icon = VectorDrawableCompat.create(context.resources, value, context.theme) } + set(value) { icon = AppCompatResources.getDrawable(context, value) } var Preference.summaryRes: Int get() = 0 // set only @@ -228,4 +227,4 @@ var Preference.summaryRes: Int var Preference.iconTint: Int get() = 0 // set only - set(value) { DrawableCompat.setTint(icon, value) } + set(value) { icon?.setTint(value) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsController.kt index 6163a52c2f..84a9cf1f78 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsController.kt @@ -147,7 +147,7 @@ abstract class SettingsController : PreferenceController() { return subscribe(onNext).also { untilDestroySubscriptions.add(it) } } - inline fun Preference.visibleIf(preference: com.tfcporciuncula.flow.Preference, crossinline block: (T) -> Boolean) { + inline fun Preference.visibleIf(preference: com.fredporciuncula.flow.preferences.Preference, crossinline block: (T) -> Boolean) { preference.asImmediateFlowIn(viewScope) { isVisible = block(it) } } } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/source/browse/BrowseSourceItem.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/source/browse/BrowseSourceItem.kt index 3133582d51..8927cf15c5 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/source/browse/BrowseSourceItem.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/source/browse/BrowseSourceItem.kt @@ -9,7 +9,7 @@ import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.content.ContextCompat import androidx.core.view.updateLayoutParams import androidx.recyclerview.widget.RecyclerView -import com.tfcporciuncula.flow.Preference +import com.fredporciuncula.flow.preferences.Preference import eu.davidea.flexibleadapter.FlexibleAdapter import eu.davidea.flexibleadapter.items.AbstractFlexibleItem import eu.davidea.flexibleadapter.items.IFlexible diff --git a/app/src/main/java/eu/kanade/tachiyomi/util/PreferenceExtensions.kt b/app/src/main/java/eu/kanade/tachiyomi/util/PreferenceExtensions.kt index 02023da9ee..933938f53c 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/util/PreferenceExtensions.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/util/PreferenceExtensions.kt @@ -5,7 +5,7 @@ import android.widget.CompoundButton import android.widget.RadioButton import android.widget.RadioGroup import android.widget.Spinner -import com.tfcporciuncula.flow.Preference +import com.fredporciuncula.flow.preferences.Preference import eu.kanade.tachiyomi.widget.IgnoreFirstSpinnerListener inline fun SharedPreferences.getItem(key: String, default: T): T { diff --git a/app/src/main/java/eu/kanade/tachiyomi/widget/MaterialSpinnerView.kt b/app/src/main/java/eu/kanade/tachiyomi/widget/MaterialSpinnerView.kt index 7b718ff329..ca61bfb66f 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/widget/MaterialSpinnerView.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/widget/MaterialSpinnerView.kt @@ -16,7 +16,7 @@ import androidx.core.content.ContextCompat import androidx.core.graphics.ColorUtils import androidx.core.view.forEach import androidx.core.view.get -import com.tfcporciuncula.flow.Preference +import com.fredporciuncula.flow.preferences.Preference import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.databinding.MaterialSpinnerViewBinding import eu.kanade.tachiyomi.util.lang.tintText