Maybe fixes #8439
@@ -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()
@@ -118,7 +118,9 @@ class ExtensionDetailsPresenter(
fun toggleSources(enable: Boolean) {
- extension?.sources?.forEach { toggleSource.await(it.id, enable) }
+ extension?.sources
+ ?.map { it.id }
+ ?.let { toggleSource.await(it, enable) }
private fun createUrl(url: String, pkgName: String, pkgFactory: String?, path: String = ""): String {