Split source preferences from PreferencesHelper (#8029)
(cherry picked from commit 30b3b2d3ff)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
# app/src/main/java/eu/kanade/tachiyomi/source/SourceExtensions.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterPresenter.kt
This commit is contained in:
@@ -18,6 +18,7 @@ import eu.kanade.domain.manga.interactor.UpdateManga
|
||||
import eu.kanade.domain.manga.model.MangaUpdate
|
||||
import eu.kanade.domain.source.interactor.InsertFeedSavedSearch
|
||||
import eu.kanade.domain.source.interactor.InsertSavedSearch
|
||||
import eu.kanade.domain.source.service.SourcePreferences
|
||||
import eu.kanade.tachiyomi.BuildConfig
|
||||
import eu.kanade.tachiyomi.data.backup.BackupCreatorJob
|
||||
import eu.kanade.tachiyomi.data.database.models.Manga
|
||||
@@ -93,6 +94,7 @@ object EXHMigrations {
|
||||
context: Context,
|
||||
preferences: PreferencesHelper,
|
||||
networkPreferences: NetworkPreferences,
|
||||
sourcePreferences: SourcePreferences,
|
||||
): Boolean {
|
||||
val oldVersion = preferences.ehLastVersionCode().get()
|
||||
try {
|
||||
|
||||
@@ -9,8 +9,8 @@ import eu.kanade.domain.manga.interactor.GetManga
|
||||
import eu.kanade.domain.manga.interactor.InsertManga
|
||||
import eu.kanade.domain.manga.interactor.UpdateManga
|
||||
import eu.kanade.domain.manga.model.Manga
|
||||
import eu.kanade.domain.source.service.SourcePreferences
|
||||
import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
import eu.kanade.tachiyomi.source.online.UrlImportableSource
|
||||
import eu.kanade.tachiyomi.source.online.all.EHentai
|
||||
@@ -28,7 +28,7 @@ class GalleryAdder(
|
||||
private val sourceManager: SourceManager = Injekt.get(),
|
||||
) {
|
||||
|
||||
private val filters: Pair<Set<String>, Set<Long>> = Injekt.get<PreferencesHelper>().run {
|
||||
private val filters: Pair<Set<String>, Set<Long>> = Injekt.get<SourcePreferences>().run {
|
||||
enabledLanguages().get() to disabledSources().get().map { it.toLong() }.toSet()
|
||||
}
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ import eu.kanade.domain.manga.interactor.GetFlatMetadataById
|
||||
import eu.kanade.domain.manga.interactor.GetSearchMetadata
|
||||
import eu.kanade.domain.manga.interactor.InsertFlatMetadata
|
||||
import eu.kanade.domain.manga.interactor.UpdateManga
|
||||
import eu.kanade.domain.source.service.SourcePreferences
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.network.NetworkPreferences
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
@@ -32,6 +33,7 @@ object DebugFunctions {
|
||||
val handler: DatabaseHandler by injectLazy()
|
||||
val prefs: PreferencesHelper by injectLazy()
|
||||
val networkPrefs: NetworkPreferences by injectLazy()
|
||||
val sourcePrefs: SourcePreferences by injectLazy()
|
||||
val sourceManager: SourceManager by injectLazy()
|
||||
val updateManga: UpdateManga by injectLazy()
|
||||
val getFavorites: GetFavorites by injectLazy()
|
||||
@@ -43,12 +45,12 @@ object DebugFunctions {
|
||||
|
||||
fun forceUpgradeMigration() {
|
||||
prefs.ehLastVersionCode().set(1)
|
||||
EXHMigrations.upgrade(app, prefs, networkPrefs)
|
||||
EXHMigrations.upgrade(app, prefs, networkPrefs, sourcePrefs)
|
||||
}
|
||||
|
||||
fun forceSetupJobs() {
|
||||
prefs.ehLastVersionCode().set(0)
|
||||
EXHMigrations.upgrade(app, prefs, networkPrefs)
|
||||
EXHMigrations.upgrade(app, prefs, networkPrefs, sourcePrefs)
|
||||
}
|
||||
|
||||
fun resetAgedFlagInEXHManga() {
|
||||
|
||||
@@ -8,16 +8,16 @@ import android.widget.TextView
|
||||
import androidx.core.text.HtmlCompat
|
||||
import com.ms_square.debugoverlay.DataObserver
|
||||
import com.ms_square.debugoverlay.OverlayModule
|
||||
import eu.kanade.domain.source.service.SourcePreferences
|
||||
import eu.kanade.tachiyomi.BuildConfig
|
||||
import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.util.system.dpToPx
|
||||
import uy.kohesive.injekt.injectLazy
|
||||
import java.util.Locale
|
||||
|
||||
class EHDebugModeOverlay(private val context: Context) : OverlayModule<String>(null, null) {
|
||||
private var textView: TextView? = null
|
||||
private val preferences: PreferencesHelper by injectLazy()
|
||||
private val preferences: SourcePreferences by injectLazy()
|
||||
|
||||
override fun start() {}
|
||||
override fun stop() {}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package exh.md.utils
|
||||
|
||||
import eu.kanade.domain.source.service.SourcePreferences
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.data.track.mdlist.MdList
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
@@ -337,8 +338,8 @@ class MdUtil {
|
||||
"Bearer " + (sessionToken(preferences, mdList) ?: throw NoSessionException()),
|
||||
).build()
|
||||
|
||||
fun getEnabledMangaDex(preferences: PreferencesHelper, sourceManager: SourceManager = Injekt.get()): MangaDex? {
|
||||
return getEnabledMangaDexs(preferences, sourceManager).let { mangadexs ->
|
||||
fun getEnabledMangaDex(preferences: PreferencesHelper, sourcePreferences: SourcePreferences = Injekt.get(), sourceManager: SourceManager = Injekt.get()): MangaDex? {
|
||||
return getEnabledMangaDexs(sourcePreferences, sourceManager).let { mangadexs ->
|
||||
preferences.preferredMangaDexId().get().toLongOrNull()?.nullIfZero()
|
||||
?.let { preferredMangaDexId ->
|
||||
mangadexs.firstOrNull { it.id == preferredMangaDexId }
|
||||
@@ -347,7 +348,7 @@ class MdUtil {
|
||||
}
|
||||
}
|
||||
|
||||
fun getEnabledMangaDexs(preferences: PreferencesHelper, sourceManager: SourceManager = Injekt.get()): List<MangaDex> {
|
||||
fun getEnabledMangaDexs(preferences: SourcePreferences, sourceManager: SourceManager = Injekt.get()): List<MangaDex> {
|
||||
val languages = preferences.enabledLanguages().get()
|
||||
val disabledSourceIds = preferences.disabledSources().get()
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package exh.util
|
||||
|
||||
import eu.kanade.domain.source.service.SourcePreferences
|
||||
import eu.kanade.tachiyomi.core.preference.Preference
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.model.Page
|
||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||
@@ -30,7 +30,7 @@ interface DataSaver {
|
||||
}
|
||||
}
|
||||
|
||||
fun DataSaver(source: Source, preferences: PreferencesHelper): DataSaver {
|
||||
fun DataSaver(source: Source, preferences: SourcePreferences): DataSaver {
|
||||
return if (preferences.dataSaver().get() && source.id.toString() !in preferences.dataSaverExcludedSources().get()) {
|
||||
return DataSaverImpl(preferences)
|
||||
} else {
|
||||
@@ -38,7 +38,7 @@ fun DataSaver(source: Source, preferences: PreferencesHelper): DataSaver {
|
||||
}
|
||||
}
|
||||
|
||||
private class DataSaverImpl(preferences: PreferencesHelper) : DataSaver {
|
||||
private class DataSaverImpl(preferences: SourcePreferences) : DataSaver {
|
||||
private val dataSavedServer = preferences.dataSaverServer().get().trimEnd('/')
|
||||
|
||||
private val ignoreJpg = preferences.dataSaverIgnoreJpeg().get()
|
||||
|
||||
Reference in New Issue
Block a user