|
|
@ -5,17 +5,16 @@ import android.content.Intent |
|
|
|
import androidx.lifecycle.MutableLiveData |
|
|
|
import androidx.lifecycle.MutableLiveData |
|
|
|
import androidx.lifecycle.viewModelScope |
|
|
|
import androidx.lifecycle.viewModelScope |
|
|
|
import io.legado.app.base.BaseViewModel |
|
|
|
import io.legado.app.base.BaseViewModel |
|
|
|
|
|
|
|
import io.legado.app.constant.AppLog |
|
|
|
import io.legado.app.data.appDb |
|
|
|
import io.legado.app.data.appDb |
|
|
|
import io.legado.app.data.entities.BookSource |
|
|
|
import io.legado.app.data.entities.BookSource |
|
|
|
import io.legado.app.data.entities.SearchBook |
|
|
|
import io.legado.app.data.entities.SearchBook |
|
|
|
import io.legado.app.model.webBook.WebBook |
|
|
|
import io.legado.app.model.webBook.WebBook |
|
|
|
import io.legado.app.utils.printOnDebug |
|
|
|
import io.legado.app.utils.printOnDebug |
|
|
|
import io.legado.app.utils.stackTraceStr |
|
|
|
import io.legado.app.utils.stackTraceStr |
|
|
|
|
|
|
|
|
|
|
|
import kotlinx.coroutines.Dispatchers.IO |
|
|
|
import kotlinx.coroutines.Dispatchers.IO |
|
|
|
import kotlinx.coroutines.ExperimentalCoroutinesApi |
|
|
|
import kotlinx.coroutines.ExperimentalCoroutinesApi |
|
|
|
import kotlinx.coroutines.flow.mapLatest |
|
|
|
import kotlinx.coroutines.flow.mapLatest |
|
|
|
import kotlinx.coroutines.launch |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@OptIn(ExperimentalCoroutinesApi::class) |
|
|
|
@OptIn(ExperimentalCoroutinesApi::class) |
|
|
@ -29,7 +28,7 @@ class ExploreShowViewModel(application: Application) : BaseViewModel(application |
|
|
|
private var page = 1 |
|
|
|
private var page = 1 |
|
|
|
|
|
|
|
|
|
|
|
init { |
|
|
|
init { |
|
|
|
viewModelScope.launch { |
|
|
|
execute { |
|
|
|
appDb.bookDao.flowAll().mapLatest { books -> |
|
|
|
appDb.bookDao.flowAll().mapLatest { books -> |
|
|
|
books.map { "${it.name}-${it.author}" } |
|
|
|
books.map { "${it.name}-${it.author}" } |
|
|
|
}.collect { |
|
|
|
}.collect { |
|
|
@ -37,6 +36,8 @@ class ExploreShowViewModel(application: Application) : BaseViewModel(application |
|
|
|
bookshelf.addAll(it) |
|
|
|
bookshelf.addAll(it) |
|
|
|
upAdapterLiveData.postValue("isInBookshelf") |
|
|
|
upAdapterLiveData.postValue("isInBookshelf") |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
}.onError { |
|
|
|
|
|
|
|
AppLog.put("加载书架数据失败", it) |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|