diff --git a/app/src/main/java/io/legado/app/ui/book/search/SearchActivity.kt b/app/src/main/java/io/legado/app/ui/book/search/SearchActivity.kt index 26748469e..f682ff47d 100644 --- a/app/src/main/java/io/legado/app/ui/book/search/SearchActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/search/SearchActivity.kt @@ -61,6 +61,7 @@ class SearchActivity : VMBaseActivity? = null private var historyFlowJob: Job? = null private var booksFlowJob: Job? = null private var precisionSearchMenuItem: MenuItem? = null @@ -82,8 +83,6 @@ class SearchActivity : VMBaseActivity { @@ -129,6 +152,14 @@ class SearchActivity : VMBaseActivity alertSearchScope() R.id.menu_source_manage -> startActivity() R.id.menu_log -> showDialogFragment(AppLogDialog()) + R.id.menu_1 -> viewModel.searchScope.update("") + else -> { + if (item.groupId == R.id.menu_group_1) { + viewModel.searchScope.remove(item.title.toString()) + } else if (item.groupId == R.id.menu_group_2) { + viewModel.searchScope.update(item.title.toString()) + } + } } return super.onCompatOptionsItemSelected(item) } @@ -219,7 +250,11 @@ class SearchActivity : VMBaseActivity) { scope = groups.joinToString(",") stateLiveData.postValue(scope) + save() } fun update(source: BookSource) { scope = "${source.bookSourceName}::${source.bookSourceUrl}" stateLiveData.postValue(scope) + save() } fun isSource(): Boolean { @@ -69,12 +72,27 @@ data class SearchScope(private var scope: String) { list.add(it) } } - if (list.isEmpty()) { - list.add(appCtx.getString(R.string.all_source)) - } return list } + fun remove(scope: String) { + if (isSource()) { + this.scope = "" + } else { + val stringBuilder = StringBuilder() + this.scope.split(",").forEach { + if (it != scope) { + if (stringBuilder.isNotEmpty()) { + stringBuilder.append(",") + } + stringBuilder.append(it) + } + } + this.scope = stringBuilder.toString() + } + stateLiveData.postValue(this.scope) + } + /** * 搜索范围书源 */ diff --git a/app/src/main/res/layout/activity_book_search.xml b/app/src/main/res/layout/activity_book_search.xml index 6fe054954..c4f6bc74c 100644 --- a/app/src/main/res/layout/activity_book_search.xml +++ b/app/src/main/res/layout/activity_book_search.xml @@ -48,15 +48,6 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintTop_toBottomOf="@id/title_bar"> - - - - + + diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index 347c1d2a2..28ccd97fa 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -1047,4 +1047,5 @@ 设备名称 唤醒锁 开启web服务的时候启用唤醒锁,有些手机开启唤醒锁会被杀后台 + 切换搜索范围 diff --git a/app/src/main/res/values-ja-rJP/strings.xml b/app/src/main/res/values-ja-rJP/strings.xml index 0b9fb73c5..6f4acf9c4 100644 --- a/app/src/main/res/values-ja-rJP/strings.xml +++ b/app/src/main/res/values-ja-rJP/strings.xml @@ -1050,4 +1050,5 @@ 设备名称 唤醒锁 开启web服务的时候启用唤醒锁,有些手机开启唤醒锁会被杀后台 + 切换搜索范围 diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 08456c240..d456b76ca 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -1050,4 +1050,5 @@ 设备名称 唤醒锁 开启web服务的时候启用唤醒锁,有些手机开启唤醒锁会被杀后台 + 切换搜索范围 diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index 45e1448d8..f5cc7eb15 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -1047,4 +1047,5 @@ 设备名称 唤醒锁 开启web服务的时候启用唤醒锁,有些手机开启唤醒锁会被杀后台 + 切换搜索范围 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 6caf23266..b175a7d82 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -1049,4 +1049,5 @@ 设备名称 唤醒锁 开启web服务的时候启用唤醒锁,有些手机开启唤醒锁会被杀后台 + 切换搜索范围 diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml index 4df27c03b..63c4cb030 100644 --- a/app/src/main/res/values-zh/strings.xml +++ b/app/src/main/res/values-zh/strings.xml @@ -1049,4 +1049,5 @@ 设备名称 唤醒锁 开启web服务的时候启用唤醒锁,有些手机开启唤醒锁会被杀后台 + 切换搜索范围 diff --git a/app/src/main/res/values/ids.xml b/app/src/main/res/values/ids.xml index a854e3f0d..f3c6b003b 100644 --- a/app/src/main/res/values/ids.xml +++ b/app/src/main/res/values/ids.xml @@ -5,6 +5,11 @@ + + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index b79837e06..5e0fe4896 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1050,4 +1050,5 @@ 设备名称 唤醒锁 开启web服务的时候启用唤醒锁,有些手机开启唤醒锁会被杀后台 + 切换搜索范围