优化
This commit is contained in:
@@ -203,7 +203,7 @@
|
|||||||
android:screenOrientation="behind" />
|
android:screenOrientation="behind" />
|
||||||
<!-- txt目录规则管理 -->
|
<!-- txt目录规则管理 -->
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.book.import.local.rule.TxtTocRuleActivity"
|
android:name=".ui.book.toc.rule.TxtTocRuleActivity"
|
||||||
android:launchMode="singleTop"
|
android:launchMode="singleTop"
|
||||||
android:screenOrientation="behind" />
|
android:screenOrientation="behind" />
|
||||||
<!-- 替换规则界面 -->
|
<!-- 替换规则界面 -->
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ import io.legado.app.ui.book.searchContent.SearchContentActivity
|
|||||||
import io.legado.app.ui.book.searchContent.SearchResult
|
import io.legado.app.ui.book.searchContent.SearchResult
|
||||||
import io.legado.app.ui.book.source.edit.BookSourceEditActivity
|
import io.legado.app.ui.book.source.edit.BookSourceEditActivity
|
||||||
import io.legado.app.ui.book.toc.TocActivityResult
|
import io.legado.app.ui.book.toc.TocActivityResult
|
||||||
import io.legado.app.ui.book.toc.TxtTocRegexDialog
|
import io.legado.app.ui.book.toc.rule.TxtTocRuleDialog
|
||||||
import io.legado.app.ui.browser.WebViewActivity
|
import io.legado.app.ui.browser.WebViewActivity
|
||||||
import io.legado.app.ui.dict.DictDialog
|
import io.legado.app.ui.dict.DictDialog
|
||||||
import io.legado.app.ui.document.HandleFileContract
|
import io.legado.app.ui.document.HandleFileContract
|
||||||
@@ -87,7 +87,7 @@ class ReadBookActivity : BaseReadBookActivity(),
|
|||||||
ChangeChapterSourceDialog.CallBack,
|
ChangeChapterSourceDialog.CallBack,
|
||||||
ReadBook.CallBack,
|
ReadBook.CallBack,
|
||||||
AutoReadDialog.CallBack,
|
AutoReadDialog.CallBack,
|
||||||
TxtTocRegexDialog.CallBack,
|
TxtTocRuleDialog.CallBack,
|
||||||
ColorPickerDialogListener {
|
ColorPickerDialogListener {
|
||||||
|
|
||||||
private val tocActivity =
|
private val tocActivity =
|
||||||
@@ -384,7 +384,7 @@ class ReadBookActivity : BaseReadBookActivity(),
|
|||||||
}
|
}
|
||||||
R.id.menu_log -> showDialogFragment<AppLogDialog>()
|
R.id.menu_log -> showDialogFragment<AppLogDialog>()
|
||||||
R.id.menu_toc_regex -> showDialogFragment(
|
R.id.menu_toc_regex -> showDialogFragment(
|
||||||
TxtTocRegexDialog(ReadBook.book?.tocUrl)
|
TxtTocRuleDialog(ReadBook.book?.tocUrl)
|
||||||
)
|
)
|
||||||
R.id.menu_reverse_content -> ReadBook.book?.let {
|
R.id.menu_reverse_content -> ReadBook.book?.let {
|
||||||
viewModel.reverseContent(it)
|
viewModel.reverseContent(it)
|
||||||
|
|||||||
@@ -28,11 +28,11 @@ import io.legado.app.lib.theme.primaryTextColor
|
|||||||
import io.legado.app.model.CheckSource
|
import io.legado.app.model.CheckSource
|
||||||
import io.legado.app.model.Debug
|
import io.legado.app.model.Debug
|
||||||
import io.legado.app.ui.association.ImportBookSourceDialog
|
import io.legado.app.ui.association.ImportBookSourceDialog
|
||||||
import io.legado.app.ui.book.import.local.rule.TxtTocRuleActivity
|
|
||||||
import io.legado.app.ui.book.search.SearchActivity
|
import io.legado.app.ui.book.search.SearchActivity
|
||||||
import io.legado.app.ui.book.search.SearchScope
|
import io.legado.app.ui.book.search.SearchScope
|
||||||
import io.legado.app.ui.book.source.debug.BookSourceDebugActivity
|
import io.legado.app.ui.book.source.debug.BookSourceDebugActivity
|
||||||
import io.legado.app.ui.book.source.edit.BookSourceEditActivity
|
import io.legado.app.ui.book.source.edit.BookSourceEditActivity
|
||||||
|
import io.legado.app.ui.book.toc.rule.TxtTocRuleActivity
|
||||||
import io.legado.app.ui.config.CheckSourceConfig
|
import io.legado.app.ui.config.CheckSourceConfig
|
||||||
import io.legado.app.ui.document.HandleFileContract
|
import io.legado.app.ui.document.HandleFileContract
|
||||||
import io.legado.app.ui.qrcode.QrCodeResult
|
import io.legado.app.ui.qrcode.QrCodeResult
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import io.legado.app.help.config.AppConfig
|
|||||||
import io.legado.app.lib.theme.accentColor
|
import io.legado.app.lib.theme.accentColor
|
||||||
import io.legado.app.lib.theme.primaryTextColor
|
import io.legado.app.lib.theme.primaryTextColor
|
||||||
import io.legado.app.ui.about.AppLogDialog
|
import io.legado.app.ui.about.AppLogDialog
|
||||||
|
import io.legado.app.ui.book.toc.rule.TxtTocRuleDialog
|
||||||
import io.legado.app.utils.applyTint
|
import io.legado.app.utils.applyTint
|
||||||
import io.legado.app.utils.gone
|
import io.legado.app.utils.gone
|
||||||
import io.legado.app.utils.showDialogFragment
|
import io.legado.app.utils.showDialogFragment
|
||||||
@@ -96,7 +97,7 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>() {
|
|||||||
override fun onCompatOptionsItemSelected(item: MenuItem): Boolean {
|
override fun onCompatOptionsItemSelected(item: MenuItem): Boolean {
|
||||||
when (item.itemId) {
|
when (item.itemId) {
|
||||||
R.id.menu_toc_regex -> showDialogFragment(
|
R.id.menu_toc_regex -> showDialogFragment(
|
||||||
TxtTocRegexDialog(viewModel.bookData.value?.tocUrl)
|
TxtTocRuleDialog(viewModel.bookData.value?.tocUrl)
|
||||||
)
|
)
|
||||||
R.id.menu_reverse_toc -> viewModel.reverseToc {
|
R.id.menu_reverse_toc -> viewModel.reverseToc {
|
||||||
viewModel.chapterListCallBack?.upChapterList(searchView?.query?.toString())
|
viewModel.chapterListCallBack?.upChapterList(searchView?.query?.toString())
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
package io.legado.app.ui.book.toc
|
|
||||||
|
|
||||||
import android.app.Application
|
|
||||||
import io.legado.app.base.BaseViewModel
|
|
||||||
import io.legado.app.data.appDb
|
|
||||||
import io.legado.app.data.entities.TxtTocRule
|
|
||||||
import io.legado.app.help.DefaultData
|
|
||||||
|
|
||||||
/**
|
|
||||||
* txt目录规则
|
|
||||||
*/
|
|
||||||
class TxtTocRegexViewModel(application: Application) : BaseViewModel(application) {
|
|
||||||
|
|
||||||
fun saveRule(rule: TxtTocRule) {
|
|
||||||
execute {
|
|
||||||
if (rule.serialNumber < 0) {
|
|
||||||
rule.serialNumber = appDb.txtTocRuleDao.maxOrder + 1
|
|
||||||
}
|
|
||||||
appDb.txtTocRuleDao.insert(rule)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
fun importDefault() {
|
|
||||||
execute {
|
|
||||||
DefaultData.importDefaultTocRules()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package io.legado.app.ui.book.import.local.rule
|
package io.legado.app.ui.book.toc.rule
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package io.legado.app.ui.book.import.local.rule
|
package io.legado.app.ui.book.toc.rule
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
+4
-4
@@ -1,4 +1,4 @@
|
|||||||
package io.legado.app.ui.book.toc
|
package io.legado.app.ui.book.toc.rule
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
@@ -36,7 +36,7 @@ import kotlinx.coroutines.launch
|
|||||||
/**
|
/**
|
||||||
* txt目录规则
|
* txt目录规则
|
||||||
*/
|
*/
|
||||||
class TxtTocRegexDialog() : BaseDialogFragment(R.layout.dialog_toc_regex),
|
class TxtTocRuleDialog() : BaseDialogFragment(R.layout.dialog_toc_regex),
|
||||||
Toolbar.OnMenuItemClickListener {
|
Toolbar.OnMenuItemClickListener {
|
||||||
|
|
||||||
constructor(tocRegex: String?) : this() {
|
constructor(tocRegex: String?) : this() {
|
||||||
@@ -46,7 +46,7 @@ class TxtTocRegexDialog() : BaseDialogFragment(R.layout.dialog_toc_regex),
|
|||||||
}
|
}
|
||||||
|
|
||||||
private val importTocRuleKey = "tocRuleUrl"
|
private val importTocRuleKey = "tocRuleUrl"
|
||||||
private val viewModel: TxtTocRegexViewModel by viewModels()
|
private val viewModel: TxtTocRuleViewModel by viewModels()
|
||||||
private val binding by viewBinding(DialogTocRegexBinding::bind)
|
private val binding by viewBinding(DialogTocRegexBinding::bind)
|
||||||
private val adapter by lazy { TocRegexAdapter(requireContext()) }
|
private val adapter by lazy { TocRegexAdapter(requireContext()) }
|
||||||
var selectedName: String? = null
|
var selectedName: String? = null
|
||||||
@@ -180,7 +180,7 @@ class TxtTocRegexDialog() : BaseDialogFragment(R.layout.dialog_toc_regex),
|
|||||||
tocRule.name = tvRuleName.text.toString()
|
tocRule.name = tvRuleName.text.toString()
|
||||||
tocRule.rule = tvRuleRegex.text.toString()
|
tocRule.rule = tvRuleRegex.text.toString()
|
||||||
tocRule.example = tvRuleExample.text.toString()
|
tocRule.example = tvRuleExample.text.toString()
|
||||||
viewModel.saveRule(tocRule)
|
viewModel.save(tocRule)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
cancelButton()
|
cancelButton()
|
||||||
+4
-1
@@ -1,4 +1,4 @@
|
|||||||
package io.legado.app.ui.book.import.local.rule
|
package io.legado.app.ui.book.toc.rule
|
||||||
|
|
||||||
import android.app.Application
|
import android.app.Application
|
||||||
import io.legado.app.base.BaseViewModel
|
import io.legado.app.base.BaseViewModel
|
||||||
@@ -15,6 +15,9 @@ class TxtTocRuleViewModel(app: Application) : BaseViewModel(app) {
|
|||||||
|
|
||||||
fun save(txtTocRule: TxtTocRule) {
|
fun save(txtTocRule: TxtTocRule) {
|
||||||
execute {
|
execute {
|
||||||
|
if (txtTocRule.serialNumber < 0) {
|
||||||
|
txtTocRule.serialNumber = appDb.txtTocRuleDao.maxOrder + 1
|
||||||
|
}
|
||||||
appDb.txtTocRuleDao.insert(txtTocRule)
|
appDb.txtTocRuleDao.insert(txtTocRule)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user