|
|
@@ -21,7 +21,6 @@ import io.legado.app.data.appDb
|
|
|
import io.legado.app.data.entities.Book
|
|
|
import io.legado.app.data.entities.SearchKeyword
|
|
|
import io.legado.app.databinding.ActivityBookSearchBinding
|
|
|
-import io.legado.app.help.config.AppConfig
|
|
|
import io.legado.app.lib.dialogs.alert
|
|
|
import io.legado.app.lib.theme.*
|
|
|
import io.legado.app.ui.about.AppLogDialog
|
|
|
@@ -68,13 +67,12 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
|
|
private var precisionSearchMenuItem: MenuItem? = null
|
|
|
private var isManualStopSearch = false
|
|
|
private val searchFinishCallback: (isEmpty: Boolean) -> Unit = searchFinish@{ isEmpty ->
|
|
|
- val searchGroup = AppConfig.searchGroup
|
|
|
- if (!isEmpty || searchGroup.isEmpty()) return@searchFinish
|
|
|
+ if (!isEmpty || viewModel.searchScope.isAll()) return@searchFinish
|
|
|
launch {
|
|
|
alert("搜索结果为空") {
|
|
|
val precisionSearch = appCtx.getPrefBoolean(PreferKey.precisionSearch)
|
|
|
if (precisionSearch) {
|
|
|
- setMessage("${searchGroup}分组搜索结果为空,是否关闭精准搜索?")
|
|
|
+ setMessage("${viewModel.searchScope.display}分组搜索结果为空,是否关闭精准搜索?")
|
|
|
yesButton {
|
|
|
appCtx.putPrefBoolean(PreferKey.precisionSearch, false)
|
|
|
precisionSearchMenuItem?.isChecked = false
|
|
|
@@ -82,10 +80,10 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
|
|
viewModel.search(searchView.query.toString())
|
|
|
}
|
|
|
} else {
|
|
|
- setMessage("${searchGroup}分组搜索结果为空,是否切换到全部分组?")
|
|
|
+ setMessage("${viewModel.searchScope.display}分组搜索结果为空,是否切换到全部分组?")
|
|
|
yesButton {
|
|
|
- AppConfig.searchGroup = ""
|
|
|
- viewModel.searchKey = ""
|
|
|
+ viewModel.searchScope.update("")
|
|
|
+ viewModel.searchScope.save()
|
|
|
viewModel.search(searchView.query.toString())
|
|
|
}
|
|
|
}
|
|
|
@@ -222,7 +220,7 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
|
|
}
|
|
|
|
|
|
private fun initData() {
|
|
|
- searchScopeAdapter.setItems(viewModel.searchScope.getShowNames())
|
|
|
+ searchScopeAdapter.setItems(viewModel.searchScope.displayNames)
|
|
|
viewModel.isSearchLiveData.observe(this) {
|
|
|
if (it) {
|
|
|
startSearch()
|
|
|
@@ -245,7 +243,7 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
|
|
val searchScope = intent?.getStringExtra("searchScope")
|
|
|
searchScope?.let {
|
|
|
viewModel.searchScope.update(searchScope)
|
|
|
- searchScopeAdapter.setItems(viewModel.searchScope.getShowNames())
|
|
|
+ searchScopeAdapter.setItems(viewModel.searchScope.displayNames)
|
|
|
}
|
|
|
val key = intent?.getStringExtra("key")
|
|
|
if (key.isNullOrBlank()) {
|
|
|
@@ -277,7 +275,7 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
|
|
if (visible) {
|
|
|
upHistory(searchView.query.toString())
|
|
|
binding.llInputHelp.visibility = VISIBLE
|
|
|
- searchScopeAdapter.setItems(viewModel.searchScope.getShowNames())
|
|
|
+ searchScopeAdapter.setItems(viewModel.searchScope.displayNames)
|
|
|
} else {
|
|
|
binding.llInputHelp.visibility = GONE
|
|
|
}
|
|
|
@@ -385,7 +383,7 @@ class SearchActivity : VMBaseActivity<ActivityBookSearchBinding, SearchViewModel
|
|
|
override fun onSearchScopeOk(searchScope: SearchScope) {
|
|
|
searchScope.save()
|
|
|
viewModel.searchScope.update(searchScope.toString())
|
|
|
- searchScopeAdapter.setItems(searchScope.getShowNames())
|
|
|
+ searchScopeAdapter.setItems(searchScope.displayNames)
|
|
|
}
|
|
|
|
|
|
private fun alertSearchScope() {
|