|
|
@@ -13,6 +13,7 @@ import androidx.fragment.app.FragmentPagerAdapter
|
|
|
import com.google.android.material.tabs.TabLayout
|
|
|
import io.legado.app.R
|
|
|
import io.legado.app.base.VMBaseActivity
|
|
|
+import io.legado.app.data.entities.Book
|
|
|
import io.legado.app.databinding.ActivityChapterListBinding
|
|
|
import io.legado.app.help.book.isLocalTxt
|
|
|
import io.legado.app.help.config.AppConfig
|
|
|
@@ -99,7 +100,10 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
|
|
|
}
|
|
|
|
|
|
override fun onMenuOpened(featureId: Int, menu: Menu): Boolean {
|
|
|
- menu.findItem(R.id.menu_use_replace)?.isChecked = AppConfig.tocUiUseReplace
|
|
|
+ menu.findItem(R.id.menu_use_replace)?.isChecked =
|
|
|
+ AppConfig.tocUiUseReplace
|
|
|
+ menu.findItem(R.id.menu_split_long_chapter)?.isChecked =
|
|
|
+ viewModel.bookData.value?.getSplitLongChapter() == true
|
|
|
return super.onMenuOpened(featureId, menu)
|
|
|
}
|
|
|
|
|
|
@@ -108,6 +112,13 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
|
|
|
R.id.menu_toc_regex -> showDialogFragment(
|
|
|
TxtTocRuleDialog(viewModel.bookData.value?.tocUrl)
|
|
|
)
|
|
|
+ R.id.menu_split_long_chapter -> {
|
|
|
+ viewModel.bookData.value?.let { book ->
|
|
|
+ item.isChecked = !item.isChecked
|
|
|
+ book.setSplitLongChapter(item.isChecked)
|
|
|
+ upBookAndToc(book)
|
|
|
+ }
|
|
|
+ }
|
|
|
R.id.menu_reverse_toc -> viewModel.reverseToc {
|
|
|
viewModel.chapterListCallBack?.upChapterList(searchView?.query?.toString())
|
|
|
setResult(RESULT_OK, Intent().apply {
|
|
|
@@ -128,16 +139,20 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
|
|
|
override fun onTocRegexDialogResult(tocRegex: String) {
|
|
|
viewModel.bookData.value?.let { book ->
|
|
|
book.tocUrl = tocRegex
|
|
|
- waitDialog.show()
|
|
|
- viewModel.upBookTocRule(book) {
|
|
|
- waitDialog.dismiss()
|
|
|
- ReadBook.book?.let { readBook ->
|
|
|
- if (readBook == book) {
|
|
|
- ReadBook.book = book
|
|
|
- ReadBook.chapterSize = book.totalChapterNum
|
|
|
- ReadBook.upMsg(null)
|
|
|
- ReadBook.loadContent(resetPageOffset = true)
|
|
|
- }
|
|
|
+ upBookAndToc(book)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private fun upBookAndToc(book: Book) {
|
|
|
+ waitDialog.show()
|
|
|
+ viewModel.upBookTocRule(book) {
|
|
|
+ waitDialog.dismiss()
|
|
|
+ ReadBook.book?.let { readBook ->
|
|
|
+ if (readBook == book) {
|
|
|
+ ReadBook.book = book
|
|
|
+ ReadBook.chapterSize = book.totalChapterNum
|
|
|
+ ReadBook.upMsg(null)
|
|
|
+ ReadBook.loadContent(resetPageOffset = true)
|
|
|
}
|
|
|
}
|
|
|
}
|