卷按钮

This commit is contained in:
HapeLee
2025-11-15 15:00:46 +08:00
parent 23f4347274
commit 9e43e085c1
3 changed files with 16 additions and 5 deletions
@@ -33,4 +33,5 @@ object EventBus {
const val EXPORT_BOOK = "exportBook"
const val UP_MANGA_CONFIG = "upMangaConfig"
const val PLAY_MODE_CHANGED = "playModeChanged"
const val UP_TOC = "upToc"
}
@@ -38,6 +38,7 @@ import io.legado.app.utils.applyNavigationBarPadding
import io.legado.app.utils.dpToPx
import io.legado.app.utils.gone
import io.legado.app.utils.observeEvent
import io.legado.app.utils.postEvent
import io.legado.app.utils.themeColor
import io.legado.app.utils.toastOnUi
import io.legado.app.utils.viewbindingdelegate.viewBinding
@@ -369,6 +370,7 @@ class ChapterListFragment : VMBaseFragment<TocViewModel>(R.layout.fragment_chapt
}.let {
adapter.setItems(it)
}
postEvent(EventBus.UP_TOC,true)
}
}
@@ -26,7 +26,9 @@ 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.constant.EventBus
import io.legado.app.data.entities.Book
import io.legado.app.data.entities.BookChapter
import io.legado.app.databinding.ActivityChapterListBinding
import io.legado.app.databinding.DialogDownloadChoiceBinding
import io.legado.app.help.book.isLocalTxt
@@ -40,8 +42,10 @@ import io.legado.app.ui.file.HandleFileContract
import io.legado.app.ui.replace.ReplaceRuleActivity
import io.legado.app.ui.replace.edit.ReplaceEditActivity
import io.legado.app.ui.widget.dialog.WaitDialog
import io.legado.app.utils.applyTint
import io.legado.app.utils.gone
import io.legado.app.utils.hideSoftInput
import io.legado.app.utils.observeEvent
import io.legado.app.utils.shouldHideSoftInput
import io.legado.app.utils.showDialogFragment
import io.legado.app.utils.viewbindingdelegate.viewBinding
@@ -110,11 +114,9 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
private fun setupMoreMenuButton() {
val tag = "android:switcher:${binding.viewPager.id}:0"
binding.viewPager.postDelayed({
val chapterFragment = supportFragmentManager.findFragmentByTag(tag) as? ChapterListFragment
val volumes = chapterFragment?.getAllVolumes().orEmpty()
binding.btnChapterMenu.isVisible = volumes.isNotEmpty()
}, 200)
val chapterFragment = supportFragmentManager.findFragmentByTag(tag) as? ChapterListFragment
val volumes = chapterFragment?.getAllVolumes().orEmpty()
binding.btnChapterMenu.isVisible = volumes.isNotEmpty()
binding.btnChapterMenu.setOnClickListener { view ->
showChapterActionsMenu(view)
}
@@ -172,6 +174,12 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
popup.show()
}
override fun observeLiveBus() {
observeEvent<Boolean>(EventBus.UP_TOC) {
setupMoreMenuButton()
}
}
override fun dispatchTouchEvent(ev: MotionEvent): Boolean {
if (ev.action == MotionEvent.ACTION_DOWN) {
currentFocus?.let {