diff --git a/app/src/main/java/io/legado/app/help/config/LocalConfig.kt b/app/src/main/java/io/legado/app/help/config/LocalConfig.kt index 18eceba38..3981acaf3 100644 --- a/app/src/main/java/io/legado/app/help/config/LocalConfig.kt +++ b/app/src/main/java/io/legado/app/help/config/LocalConfig.kt @@ -88,6 +88,12 @@ object LocalConfig : return true } + var bookInfoDeleteAlert: Boolean + get() = getBoolean("bookInfoDeleteAlert", true) + set(value) { + putBoolean("bookInfoDeleteAlert", value) + } + var deleteBookOriginal: Boolean get() = getBoolean("deleteBookOriginal") set(value) { diff --git a/app/src/main/java/io/legado/app/ui/book/info/BookInfoActivity.kt b/app/src/main/java/io/legado/app/ui/book/info/BookInfoActivity.kt index 7f2d8feee..354cae6fa 100644 --- a/app/src/main/java/io/legado/app/ui/book/info/BookInfoActivity.kt +++ b/app/src/main/java/io/legado/app/ui/book/info/BookInfoActivity.kt @@ -146,6 +146,8 @@ class BookInfoActivity : viewModel.bookData.value?.isLocalTxt ?: false menu.findItem(R.id.menu_upload)?.isVisible = viewModel.bookData.value?.isLocal ?: false + menu.findItem(R.id.menu_delete_alert)?.isChecked = + LocalConfig.bookInfoDeleteAlert return super.onMenuOpened(featureId, menu) } @@ -206,7 +208,7 @@ class BookInfoActivity : item.isChecked = !item.isChecked if (!item.isChecked) longToastOnUi(R.string.need_more_time_load_content) } - + R.id.menu_delete_alert -> LocalConfig.bookInfoDeleteAlert = !item.isChecked R.id.menu_upload -> { viewModel.bookData.value?.let { book -> book.getRemoteUrl()?.let { @@ -471,32 +473,36 @@ class BookInfoActivity : @SuppressLint("InflateParams") private fun deleteBook() { viewModel.bookData.value?.let { - if (it.isLocal) { + if (LocalConfig.bookInfoDeleteAlert) { alert( - titleResource = R.string.sure, + titleResource = R.string.draw, messageResource = R.string.sure_del ) { - val checkBox = CheckBox(this@BookInfoActivity).apply { - setText(R.string.delete_book_file) - isChecked = LocalConfig.deleteBookOriginal + var checkBox: CheckBox? = null + if (it.isLocal) { + checkBox = CheckBox(this@BookInfoActivity).apply { + setText(R.string.delete_book_file) + isChecked = LocalConfig.deleteBookOriginal + } + val view = LinearLayout(this@BookInfoActivity).apply { + setPadding(16.dpToPx(), 0, 16.dpToPx(), 0) + addView(checkBox) + } + customView { view } } - val view = LinearLayout(this@BookInfoActivity).apply { - setPadding(16.dpToPx(), 0, 16.dpToPx(), 0) - addView(checkBox) - } - customView { view } yesButton { - LocalConfig.deleteBookOriginal = checkBox.isChecked - viewModel.delBook(checkBox.isChecked) { + if (checkBox != null) { + LocalConfig.deleteBookOriginal = checkBox.isChecked + } + viewModel.delBook(LocalConfig.deleteBookOriginal) { finish() } } noButton() } } else { - //网络书籍删除了在退出详情页之前可以重新加入书架,不需要确认,实在不行还有阅读记录,不会找不到 - viewModel.delBook { - upTvBookshelf() + viewModel.delBook(LocalConfig.deleteBookOriginal) { + finish() } } } diff --git a/app/src/main/res/menu/book_info.xml b/app/src/main/res/menu/book_info.xml index 80633d3cb..a8e445b91 100644 --- a/app/src/main/res/menu/book_info.xml +++ b/app/src/main/res/menu/book_info.xml @@ -66,6 +66,12 @@ android:checkable="true" app:showAsAction="never" /> + + Remote webDav url exists, Continue? Cannot find supported files in archive 没有设置书籍保存位置! + 删除提醒 diff --git a/app/src/main/res/values-ja-rJP/strings.xml b/app/src/main/res/values-ja-rJP/strings.xml index 63d96ac55..7cc87ad31 100644 --- a/app/src/main/res/values-ja-rJP/strings.xml +++ b/app/src/main/res/values-ja-rJP/strings.xml @@ -1085,4 +1085,5 @@ Remote webDav url exists, Continue? Cannot find supported files in archive 没有设置书籍保存位置! + 删除提醒 diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 34578550d..649220aca 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -1085,4 +1085,5 @@ Remote webDav url exists, Continue? Cannot find supported files in archive 没有设置书籍保存位置! + 删除提醒 diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index 8c79296b3..b508b8f2c 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -1082,4 +1082,5 @@ 远程webDav链接已存在,是否继续 压缩文件内没有支持的文件 没有设置书籍保存位置! + 删除提醒 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 4229d7a57..432724be3 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -1084,4 +1084,5 @@ 远程webDav链接已存在,是否继续 压缩文件内没有支持的文件 没有设置书籍保存位置! + 删除提醒 diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml index 7897d104e..b787903c9 100644 --- a/app/src/main/res/values-zh/strings.xml +++ b/app/src/main/res/values-zh/strings.xml @@ -1084,4 +1084,5 @@ 远程webDav链接已存在,是否继续 压缩文件内没有支持的文件 没有设置书籍保存位置! + 删除提醒 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index cbf4f1cd5..082806f5c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1085,4 +1085,5 @@ Remote webDav url exists, Continue? Cannot find supported files in archive 没有设置书籍保存位置! + 删除提醒