This commit is contained in:
kunfei
2023-03-16 10:22:37 +08:00
parent be4fa6e675
commit 6dd88c026d
2 changed files with 32 additions and 11 deletions
@@ -13,6 +13,7 @@ import androidx.fragment.app.FragmentPagerAdapter
import com.google.android.material.tabs.TabLayout import com.google.android.material.tabs.TabLayout
import io.legado.app.R import io.legado.app.R
import io.legado.app.base.VMBaseActivity import io.legado.app.base.VMBaseActivity
import io.legado.app.data.entities.Book
import io.legado.app.databinding.ActivityChapterListBinding import io.legado.app.databinding.ActivityChapterListBinding
import io.legado.app.help.book.isLocalTxt import io.legado.app.help.book.isLocalTxt
import io.legado.app.help.config.AppConfig import io.legado.app.help.config.AppConfig
@@ -99,7 +100,10 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
} }
override fun onMenuOpened(featureId: Int, menu: Menu): Boolean { 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) return super.onMenuOpened(featureId, menu)
} }
@@ -108,6 +112,13 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
R.id.menu_toc_regex -> showDialogFragment( R.id.menu_toc_regex -> showDialogFragment(
TxtTocRuleDialog(viewModel.bookData.value?.tocUrl) 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 { R.id.menu_reverse_toc -> viewModel.reverseToc {
viewModel.chapterListCallBack?.upChapterList(searchView?.query?.toString()) viewModel.chapterListCallBack?.upChapterList(searchView?.query?.toString())
setResult(RESULT_OK, Intent().apply { setResult(RESULT_OK, Intent().apply {
@@ -128,6 +139,11 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
override fun onTocRegexDialogResult(tocRegex: String) { override fun onTocRegexDialogResult(tocRegex: String) {
viewModel.bookData.value?.let { book -> viewModel.bookData.value?.let { book ->
book.tocUrl = tocRegex book.tocUrl = tocRegex
upBookAndToc(book)
}
}
private fun upBookAndToc(book: Book) {
waitDialog.show() waitDialog.show()
viewModel.upBookTocRule(book) { viewModel.upBookTocRule(book) {
waitDialog.dismiss() waitDialog.dismiss()
@@ -141,7 +157,6 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
} }
} }
} }
}
@Suppress("DEPRECATION") @Suppress("DEPRECATION")
private inner class TabFragmentPageAdapter : private inner class TabFragmentPageAdapter :
+6
View File
@@ -19,6 +19,12 @@
android:title="@string/txt_toc_rule" android:title="@string/txt_toc_rule"
app:showAsAction="never" /> app:showAsAction="never" />
<item
android:id="@+id/menu_split_long_chapter"
android:title="@string/split_long_chapter"
android:checkable="true"
app:showAsAction="never" />
</group> </group>
<item <item