This commit is contained in:
kunfei
2023-02-22 09:15:09 +08:00
parent fcd89f416c
commit 85ad598a26
17 changed files with 49 additions and 31 deletions
@@ -80,6 +80,7 @@ object PreferKey {
const val autoClearExpired = "autoClearExpired"
const val autoChangeSource = "autoChangeSource"
const val importKeepName = "importKeepName"
const val importKeepGroup = "importKeepGroup"
const val screenOrientation = "screenOrientation"
const val syncBookProgress = "syncBookProgress"
const val cronet = "Cronet"
@@ -331,6 +331,7 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
}
val importKeepName get() = appCtx.getPrefBoolean(PreferKey.importKeepName)
val importKeepGroup get() = appCtx.getPrefBoolean(PreferKey.importKeepGroup)
var preDownloadNum
get() = appCtx.getPrefInt(PreferKey.preDownloadNum, 10)
@@ -138,18 +138,24 @@ class ImportBookSourceDialog() : BaseDialogFragment(R.layout.dialog_recycler_vie
private fun initMenu() {
binding.toolBar.setOnMenuItemClickListener(this)
binding.toolBar.inflateMenu(R.menu.import_source)
binding.toolBar.menu.findItem(R.id.menu_Keep_original_name)
binding.toolBar.menu.findItem(R.id.menu_keep_original_name)
?.isChecked = AppConfig.importKeepName
binding.toolBar.menu.findItem(R.id.menu_keep_group)
?.isChecked = AppConfig.importKeepGroup
}
@SuppressLint("InflateParams")
override fun onMenuItemClick(item: MenuItem): Boolean {
when (item.itemId) {
R.id.menu_new_group -> alertCustomGroup(item)
R.id.menu_Keep_original_name -> {
R.id.menu_keep_original_name -> {
item.isChecked = !item.isChecked
putPrefBoolean(PreferKey.importKeepName, item.isChecked)
}
R.id.menu_keep_group -> {
item.isChecked = !item.isChecked
putPrefBoolean(PreferKey.importKeepGroup, item.isChecked)
}
}
return false
}
@@ -54,16 +54,19 @@ class ImportBookSourceViewModel(app: Application) : BaseViewModel(app) {
execute {
val group = groupName?.trim()
val keepName = AppConfig.importKeepName
val keepGroup = AppConfig.importKeepGroup
val selectSource = arrayListOf<BookSource>()
selectStatus.forEachIndexed { index, b ->
if (b) {
val source = allSources[index]
if (keepName) {
checkSources[index]?.let {
checkSources[index]?.let {
if (keepName) {
source.bookSourceName = it.bookSourceName
source.bookSourceGroup = it.bookSourceGroup
source.customOrder = it.customOrder
}
if (keepGroup) {
source.bookSourceGroup = it.bookSourceGroup
}
source.customOrder = it.customOrder
}
if (!group.isNullOrEmpty()) {
if (isAddGroup) {
@@ -122,7 +122,7 @@ class ImportReplaceRuleDialog() : BaseDialogFragment(R.layout.dialog_recycler_vi
override fun onMenuItemClick(item: MenuItem?): Boolean {
when (item?.itemId) {
R.id.menu_new_group -> alertCustomGroup(item)
R.id.menu_Keep_original_name -> {
R.id.menu_keep_original_name -> {
item.isChecked = !item.isChecked
putPrefBoolean(PreferKey.importKeepName, item.isChecked)
}
@@ -9,7 +9,6 @@ import io.legado.app.data.appDb
import io.legado.app.data.entities.ReplaceRule
import io.legado.app.exception.NoStackTraceException
import io.legado.app.help.ReplaceAnalyzer
import io.legado.app.help.config.AppConfig
import io.legado.app.help.http.newCallResponseBody
import io.legado.app.help.http.okHttpClient
import io.legado.app.help.http.text
@@ -52,18 +51,10 @@ class ImportReplaceRuleViewModel(app: Application) : BaseViewModel(app) {
fun importSelect(finally: () -> Unit) {
execute {
val group = groupName?.trim()
val keepName = AppConfig.importKeepName
val selectRules = arrayListOf<ReplaceRule>()
selectStatus.forEachIndexed { index, b ->
if (b) {
val rule = allRules[index]
if (keepName) {
checkRules[index]?.let {
rule.name = it.name
rule.group = it.group
rule.order = it.order
}
}
if (!group.isNullOrEmpty()) {
if (isAddGroup) {
val groups = linkedSetOf<String>()
@@ -137,18 +137,24 @@ class ImportRssSourceDialog() : BaseDialogFragment(R.layout.dialog_recycler_view
private fun initMenu() {
binding.toolBar.setOnMenuItemClickListener(this)
binding.toolBar.inflateMenu(R.menu.import_source)
binding.toolBar.menu.findItem(R.id.menu_Keep_original_name)?.isChecked =
binding.toolBar.menu.findItem(R.id.menu_keep_original_name)?.isChecked =
AppConfig.importKeepName
binding.toolBar.menu.findItem(R.id.menu_keep_group)?.isChecked =
AppConfig.importKeepGroup
}
@SuppressLint("InflateParams")
override fun onMenuItemClick(item: MenuItem): Boolean {
when (item.itemId) {
R.id.menu_new_group -> alertCustomGroup(item)
R.id.menu_Keep_original_name -> {
R.id.menu_keep_original_name -> {
item.isChecked = !item.isChecked
putPrefBoolean(PreferKey.importKeepName, item.isChecked)
}
R.id.menu_keep_group -> {
item.isChecked = !item.isChecked
putPrefBoolean(PreferKey.importKeepGroup, item.isChecked)
}
}
return false
}
@@ -51,16 +51,19 @@ class ImportRssSourceViewModel(app: Application) : BaseViewModel(app) {
execute {
val group = groupName?.trim()
val keepName = AppConfig.importKeepName
val keepGroup = AppConfig.importKeepGroup
val selectSource = arrayListOf<RssSource>()
selectStatus.forEachIndexed { index, b ->
if (b) {
val source = allSources[index]
if (keepName) {
checkSources[index]?.let {
checkSources[index]?.let {
if (keepName) {
source.sourceName = it.sourceName
source.sourceGroup = it.sourceGroup
source.customOrder = it.customOrder
}
if (keepGroup) {
source.sourceGroup = it.sourceGroup
}
source.customOrder = it.customOrder
}
if (!group.isNullOrEmpty()) {
if (isAddGroup) {