Toggle enabled source in bulk

Maybe fixes #8439

(cherry picked from commit 280b0f42db)
This commit is contained in:
arkon
2022-11-04 09:39:23 -04:00
committed by Jobobby04
parent a549189839
commit 4e37fbca17
6 changed files with 14 additions and 31 deletions
@@ -18,6 +18,13 @@ class ToggleSource(
}
}
fun await(sourceIds: List<Long>, enable: Boolean) {
val transformedSourceIds = sourceIds.map { it.toString() }
preferences.disabledSources().getAndSet { disabled ->
if (enable) disabled.minus(transformedSourceIds) else disabled.plus(transformedSourceIds)
}
}
private fun isEnabled(sourceId: Long): Boolean {
return sourceId.toString() in preferences.disabledSources().get()
}
@@ -1,20 +0,0 @@
package eu.kanade.domain.source.interactor
import eu.kanade.domain.source.model.Source
import eu.kanade.domain.source.service.SourcePreferences
import eu.kanade.tachiyomi.core.preference.getAndSet
class ToggleSources(
private val preferences: SourcePreferences,
) {
fun await(isEnable: Boolean, sources: List<Source>) {
preferences.disabledSources().getAndSet { disabledSources ->
if (isEnable) {
disabledSources - sources.map { it.id.toString() }.toSet()
} else {
disabledSources + sources.map { it.id.toString() }
}
}
}
}