From bd50005fe951a8c46efcf6773b9e8a6ac6e69a14 Mon Sep 17 00:00:00 2001 From: kunfei Date: Tue, 22 Feb 2022 10:30:58 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/legado/app/ui/book/changecover/ChangeCoverViewModel.kt | 4 ++-- .../app/ui/book/changesource/ChangeBookSourceViewModel.kt | 4 ++-- .../app/ui/book/changesource/ChangeChapterSourceViewModel.kt | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/book/changecover/ChangeCoverViewModel.kt b/app/src/main/java/io/legado/app/ui/book/changecover/ChangeCoverViewModel.kt index 2510e280f..52831a900 100644 --- a/app/src/main/java/io/legado/app/ui/book/changecover/ChangeCoverViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/changecover/ChangeCoverViewModel.kt @@ -4,7 +4,6 @@ import android.app.Application import android.os.Bundle import androidx.lifecycle.MutableLiveData import androidx.lifecycle.viewModelScope -import cn.hutool.core.collection.ConcurrentHashSet import io.legado.app.base.BaseViewModel import io.legado.app.constant.AppConst import io.legado.app.constant.AppPattern @@ -21,6 +20,7 @@ import kotlinx.coroutines.channels.awaitClose import kotlinx.coroutines.flow.callbackFlow import kotlinx.coroutines.flow.conflate import kotlinx.coroutines.flow.flowOn +import java.util.* import java.util.concurrent.Executors import kotlin.math.min @@ -34,7 +34,7 @@ class ChangeCoverViewModel(application: Application) : BaseViewModel(application var name: String = "" var author: String = "" val dataFlow = callbackFlow> { - val searchBooks = ConcurrentHashSet() + val searchBooks = Collections.synchronizedList(arrayListOf()) searchSuccess = { if (!searchBooks.contains(it)) { diff --git a/app/src/main/java/io/legado/app/ui/book/changesource/ChangeBookSourceViewModel.kt b/app/src/main/java/io/legado/app/ui/book/changesource/ChangeBookSourceViewModel.kt index efe86092e..bd677088d 100644 --- a/app/src/main/java/io/legado/app/ui/book/changesource/ChangeBookSourceViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/changesource/ChangeBookSourceViewModel.kt @@ -4,7 +4,6 @@ import android.app.Application import android.os.Bundle import androidx.lifecycle.MutableLiveData import androidx.lifecycle.viewModelScope -import cn.hutool.core.collection.ConcurrentHashSet import io.legado.app.base.BaseViewModel import io.legado.app.constant.AppConst import io.legado.app.constant.AppPattern @@ -28,6 +27,7 @@ import kotlinx.coroutines.flow.flowOn import kotlinx.coroutines.flow.map import splitties.init.appCtx import timber.log.Timber +import java.util.* import java.util.concurrent.Executors import kotlin.math.min @@ -41,7 +41,7 @@ class ChangeBookSourceViewModel(application: Application) : BaseViewModel(applic private var tasks = CompositeCoroutine() private var screenKey: String = "" private var bookSourceList = arrayListOf() - private val searchBooks = ConcurrentHashSet() + private val searchBooks = Collections.synchronizedList(arrayListOf()) private val searchGroup get() = appCtx.getPrefString("searchGroup") ?: "" private var searchCallback: SourceCallback? = null val searchDataFlow = callbackFlow { diff --git a/app/src/main/java/io/legado/app/ui/book/changesource/ChangeChapterSourceViewModel.kt b/app/src/main/java/io/legado/app/ui/book/changesource/ChangeChapterSourceViewModel.kt index 8a8f0fc64..c11326d6e 100644 --- a/app/src/main/java/io/legado/app/ui/book/changesource/ChangeChapterSourceViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/changesource/ChangeChapterSourceViewModel.kt @@ -4,7 +4,6 @@ import android.app.Application import android.os.Bundle import androidx.lifecycle.MutableLiveData import androidx.lifecycle.viewModelScope -import cn.hutool.core.collection.ConcurrentHashSet import io.legado.app.base.BaseViewModel import io.legado.app.constant.AppConst import io.legado.app.constant.AppPattern @@ -30,6 +29,7 @@ import kotlinx.coroutines.flow.flowOn import kotlinx.coroutines.flow.map import splitties.init.appCtx import timber.log.Timber +import java.util.* import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.Executors import kotlin.math.min @@ -47,7 +47,7 @@ class ChangeChapterSourceViewModel(application: Application) : BaseViewModel(app private var tasks = CompositeCoroutine() private var screenKey: String = "" private var bookSourceList = arrayListOf() - private val searchBooks = ConcurrentHashSet() + private val searchBooks = Collections.synchronizedList(arrayListOf()) private val tocMap = ConcurrentHashMap>() private var searchCallback: SourceCallback? = null val searchDataFlow = callbackFlow {