Now really fix internal sources download badges not showing up, plus some refactoring and testing debug functions
This commit is contained in:
parent
e338bb0f47
commit
ff48e89161
@ -7,7 +7,6 @@ import eu.kanade.tachiyomi.data.database.models.Chapter
|
|||||||
import eu.kanade.tachiyomi.data.database.models.Manga
|
import eu.kanade.tachiyomi.data.database.models.Manga
|
||||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||||
import eu.kanade.tachiyomi.source.SourceManager
|
import eu.kanade.tachiyomi.source.SourceManager
|
||||||
import exh.source.BlacklistedSources
|
|
||||||
import java.util.concurrent.TimeUnit
|
import java.util.concurrent.TimeUnit
|
||||||
import kotlinx.coroutines.flow.onEach
|
import kotlinx.coroutines.flow.onEach
|
||||||
import uy.kohesive.injekt.Injekt
|
import uy.kohesive.injekt.Injekt
|
||||||
@ -124,9 +123,7 @@ class DownloadCache(
|
|||||||
*/
|
*/
|
||||||
private fun renew() {
|
private fun renew() {
|
||||||
// SY -->
|
// SY -->
|
||||||
val onlineSources = sourceManager.getOnlineSources().filter {
|
val onlineSources = sourceManager.getVisibleOnlineSources()
|
||||||
it.id !in BlacklistedSources.HIDDEN_SOURCES
|
|
||||||
}
|
|
||||||
// SY <--
|
// SY <--
|
||||||
|
|
||||||
val sourceDirs = rootDir.dir.listFiles()
|
val sourceDirs = rootDir.dir.listFiles()
|
||||||
|
@ -4,6 +4,7 @@ import android.content.Context
|
|||||||
import com.elvishew.xlog.XLog
|
import com.elvishew.xlog.XLog
|
||||||
import eu.kanade.tachiyomi.R
|
import eu.kanade.tachiyomi.R
|
||||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||||
|
import eu.kanade.tachiyomi.data.preference.asImmediateFlow
|
||||||
import eu.kanade.tachiyomi.source.model.Page
|
import eu.kanade.tachiyomi.source.model.Page
|
||||||
import eu.kanade.tachiyomi.source.model.SChapter
|
import eu.kanade.tachiyomi.source.model.SChapter
|
||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
@ -31,7 +32,6 @@ import kotlinx.coroutines.CoroutineScope
|
|||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.Job
|
import kotlinx.coroutines.Job
|
||||||
import kotlinx.coroutines.flow.launchIn
|
import kotlinx.coroutines.flow.launchIn
|
||||||
import kotlinx.coroutines.flow.onEach
|
|
||||||
import rx.Observable
|
import rx.Observable
|
||||||
import uy.kohesive.injekt.injectLazy
|
import uy.kohesive.injekt.injectLazy
|
||||||
|
|
||||||
@ -52,7 +52,7 @@ open class SourceManager(private val context: Context) {
|
|||||||
|
|
||||||
// SY -->
|
// SY -->
|
||||||
// Recreate sources when they change
|
// Recreate sources when they change
|
||||||
prefs.enableExhentai().asFlow().onEach {
|
prefs.enableExhentai().asImmediateFlow {
|
||||||
createEHSources().forEach { registerSource(it) }
|
createEHSources().forEach { registerSource(it) }
|
||||||
}.launchIn(scope)
|
}.launchIn(scope)
|
||||||
|
|
||||||
@ -72,6 +72,10 @@ open class SourceManager(private val context: Context) {
|
|||||||
|
|
||||||
fun getOnlineSources() = sourcesMap.values.filterIsInstance<HttpSource>()
|
fun getOnlineSources() = sourcesMap.values.filterIsInstance<HttpSource>()
|
||||||
|
|
||||||
|
fun getVisibleOnlineSources() = sourcesMap.values.filterIsInstance<HttpSource>().filter {
|
||||||
|
it.id !in BlacklistedSources.HIDDEN_SOURCES
|
||||||
|
}
|
||||||
|
|
||||||
fun getCatalogueSources() = sourcesMap.values.filterIsInstance<CatalogueSource>()
|
fun getCatalogueSources() = sourcesMap.values.filterIsInstance<CatalogueSource>()
|
||||||
|
|
||||||
// SY -->
|
// SY -->
|
||||||
|
@ -20,7 +20,6 @@ import eu.kanade.tachiyomi.util.preference.switchPreferenceCategory
|
|||||||
import eu.kanade.tachiyomi.util.preference.titleRes
|
import eu.kanade.tachiyomi.util.preference.titleRes
|
||||||
import eu.kanade.tachiyomi.util.system.LocaleHelper
|
import eu.kanade.tachiyomi.util.system.LocaleHelper
|
||||||
import eu.kanade.tachiyomi.widget.preference.SwitchPreferenceCategory
|
import eu.kanade.tachiyomi.widget.preference.SwitchPreferenceCategory
|
||||||
import exh.source.BlacklistedSources
|
|
||||||
import java.util.TreeMap
|
import java.util.TreeMap
|
||||||
import kotlinx.coroutines.flow.filter
|
import kotlinx.coroutines.flow.filter
|
||||||
import kotlinx.coroutines.flow.launchIn
|
import kotlinx.coroutines.flow.launchIn
|
||||||
@ -36,9 +35,7 @@ class SourceFilterController : SettingsController() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private val onlineSources by lazy {
|
private val onlineSources by lazy {
|
||||||
Injekt.get<SourceManager>().getOnlineSources().filter {
|
Injekt.get<SourceManager>().getVisibleOnlineSources()
|
||||||
it.id !in BlacklistedSources.HIDDEN_SOURCES
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private var query = ""
|
private var query = ""
|
||||||
|
@ -179,9 +179,20 @@ object DebugFunctions {
|
|||||||
|
|
||||||
fun clearSavedSearches() = prefs.eh_savedSearches().set(emptySet())
|
fun clearSavedSearches() = prefs.eh_savedSearches().set(emptySet())
|
||||||
|
|
||||||
fun listAllSources() = sourceManager.getCatalogueSources().map {
|
fun listAllSources() = sourceManager.getCatalogueSources().joinToString("\n") {
|
||||||
"${it.id}: ${it.name} (${it.lang.toUpperCase()})"
|
"${it.id}: ${it.name} (${it.lang.toUpperCase()})"
|
||||||
}.joinToString("\n")
|
}
|
||||||
|
|
||||||
|
fun listFilteredSources() = sourceManager.getVisibleCatalogueSources().joinToString("\n") {
|
||||||
|
"${it.id}: ${it.name} (${it.lang.toUpperCase()})"
|
||||||
|
}
|
||||||
|
|
||||||
|
fun listAllHttpSources() = sourceManager.getOnlineSources().joinToString("\n") {
|
||||||
|
"${it.id}: ${it.name} (${it.lang.toUpperCase()})"
|
||||||
|
}
|
||||||
|
fun listFilteredHttpSources() = sourceManager.getVisibleOnlineSources().joinToString("\n") {
|
||||||
|
"${it.id}: ${it.name} (${it.lang.toUpperCase()})"
|
||||||
|
}
|
||||||
|
|
||||||
fun convertAllEhentaiGalleriesToExhentai() = convertSources(EH_SOURCE_ID, EXH_SOURCE_ID)
|
fun convertAllEhentaiGalleriesToExhentai() = convertSources(EH_SOURCE_ID, EXH_SOURCE_ID)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user