Toggle enabled source in bulk
Maybe fixes #8439
(cherry picked from commit 280b0f42db)
This commit is contained in:
@@ -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() }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user