From a7b239f0b96250e45195d4bfc538f1697a93ae7f Mon Sep 17 00:00:00 2001 From: tarsin Date: Sat, 1 Jul 2023 12:21:46 +0800 Subject: [PATCH] Drop unused coroutineScope --- .../main/java/com/hippo/ehviewer/client/EhFilter.kt | 12 ++++++------ .../com/hippo/ehviewer/ui/settings/FilterScreen.kt | 3 --- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/hippo/ehviewer/client/EhFilter.kt b/app/src/main/java/com/hippo/ehviewer/client/EhFilter.kt index bceaa1a52..6e41fc862 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/EhFilter.kt +++ b/app/src/main/java/com/hippo/ehviewer/client/EhFilter.kt @@ -27,18 +27,18 @@ import kotlinx.coroutines.launch private val regex = { p: Filter -> Regex(p.text) }.memoize() private inline fun List.anyActive(predicate: (Filter) -> Boolean) = any { it.enable && predicate(it) } -object EhFilter { +object EhFilter : CoroutineScope { val titleFilterList = mutableStateListOf() val uploaderFilterList = mutableStateListOf() val tagFilterList = mutableStateListOf() val tagNamespaceFilterList = mutableStateListOf() val commenterFilterList = mutableStateListOf() val commentFilterList = mutableStateListOf() - private val opScope = CoroutineScope(Dispatchers.IO.limitedParallelism(1)) - private fun Filter.launchOps(callback: ((R) -> Unit)? = null, ops: Filter.() -> R) = opScope.launch { - val r = ops() - callback?.invoke(r) - } + override val coroutineContext = Dispatchers.IO.limitedParallelism(1) + private fun Filter.launchOps( + callback: ((R) -> Unit)? = null, + ops: Filter.() -> R, + ) = launch { ops().let { callback?.invoke(it) } } fun Filter.remember(callback: ((Boolean) -> Unit)? = null) = launchOps(callback) { EhDB.addFilter(this).also { if (it) memorizeFilter(this) } } diff --git a/app/src/main/java/com/hippo/ehviewer/ui/settings/FilterScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/settings/FilterScreen.kt index b530d8edc..8324ba294 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/settings/FilterScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/settings/FilterScreen.kt @@ -31,7 +31,6 @@ import androidx.compose.material3.TopAppBar import androidx.compose.material3.TopAppBarDefaults import androidx.compose.runtime.Composable import androidx.compose.runtime.currentRecomposeScope -import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.input.nestedscroll.nestedScroll @@ -47,13 +46,11 @@ import com.hippo.ehviewer.dao.Filter import com.hippo.ehviewer.databinding.DialogAddFilterBinding import com.hippo.ehviewer.ui.LocalNavController import com.hippo.ehviewer.ui.legacy.BaseDialogBuilder -import kotlinx.coroutines.Dispatchers @Composable fun FilterScreen() { val navController = LocalNavController.current val context = LocalContext.current - val coroutineScope = rememberCoroutineScope { Dispatchers.IO } val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior() class AddFilterDialogHelper(private val dialog: AlertDialog) : View.OnClickListener { private val mArray = dialog.context.resources.getStringArray(R.array.filter_entries)