更新界面

This commit is contained in:
HapeLee committed 2025-07-01 23:42:07 +08:00
1 parent cd4caed170
commit 3908ff7cf2
76 files changed
+1586 -1393

No files matched your search

@@ -40,14 +40,14 @@ class BookmarkDialog() : BaseBottomSheetDialogFragment(R.layout.dialog_bookmark)
return
}
//@Suppress("DEPRECATION")
@Suppress("DEPRECATION")
val bookmark = arguments.getParcelable<Bookmark>("bookmark")
bookmark ?: let {
dismiss()
return
}
val editPos = arguments.getInt("editPos", -1)
binding.btnDelete.visible(editPos >= 0) // 替换 tvFooterLeft
binding.btnDelete.visible(editPos >= 0)
binding.run {
tvChapterName.text = bookmark.chapterName
@@ -59,7 +59,7 @@ class ChangeCoverDialog() : BaseDialogFragment(R.layout.dialog_change_cover),
private fun initMenu() {
binding.toolBar.inflateMenu(R.menu.change_cover)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
binding.toolBar.setOnMenuItemClickListener(this)
}
@@ -94,7 +94,7 @@ class ChangeCoverDialog() : BaseDialogFragment(R.layout.dialog_change_cover),
item.setTitle(R.string.refresh)
}
}
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
}
}
@@ -140,7 +140,7 @@ class ChangeChapterSourceDialog() : BaseDialogFragment(R.layout.dialog_chapter_c
private fun initMenu() {
binding.toolBar.inflateMenu(R.menu.change_source)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
binding.toolBar.setOnMenuItemClickListener(this)
binding.toolBar.menu.findItem(R.id.menu_check_author)
?.isChecked = AppConfig.changeSourceCheckAuthor
@@ -86,7 +86,7 @@ class GroupManageDialog : BaseBottomSheetDialogFragment(R.layout.dialog_recycler
private fun initMenu() {
binding.toolBar.setOnMenuItemClickListener(this)
binding.toolBar.inflateMenu(R.menu.book_group_manage)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
}
override fun onMenuItemClick(item: MenuItem?): Boolean {
@@ -66,7 +66,7 @@ class GroupSelectDialog() : BaseBottomSheetDialogFragment(R.layout.dialog_book_g
private fun initView() {
binding.toolBar.title = getString(R.string.group_select)
binding.toolBar.inflateMenu(R.menu.book_group_manage)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
binding.toolBar.setOnMenuItemClickListener(this)
binding.recyclerView.layoutManager = LinearLayoutManager(requireContext())
binding.recyclerView.addItemDecoration(VerticalDivider(requireContext()))
@@ -46,7 +46,7 @@ class ServerConfigDialog() : BaseDialogFragment(R.layout.dialog_webdav_server, t
override fun onFragmentCreated(view: View, savedInstanceState: Bundle?) {
//inding.toolBar.setBackgroundColor(primaryColor)
binding.toolBar.inflateMenu(R.menu.server_config)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
binding.toolBar.setOnMenuItemClickListener(this)
viewModel.init(arguments?.getLong("id")) {
upConfigView(viewModel.mServer)
@@ -2,19 +2,28 @@ package io.legato.kazusa.ui.book.info
import android.annotation.SuppressLint
import android.content.Intent
import android.graphics.Bitmap
import android.graphics.Color
import android.graphics.RenderEffect
import android.graphics.Shader
import android.graphics.drawable.BitmapDrawable
import android.graphics.drawable.Drawable
import android.net.Uri
import android.os.Build
import android.os.Bundle
import android.view.Menu
import android.view.MenuItem
import android.view.View
import android.widget.CheckBox
import android.widget.LinearLayout
import androidx.activity.result.contract.ActivityResultContracts
import androidx.activity.viewModels
import androidx.core.content.ContextCompat
import androidx.lifecycle.lifecycleScope
import androidx.palette.graphics.Palette
import com.google.android.material.button.MaterialButton
import com.google.android.material.color.utilities.Hct
import com.google.android.material.color.utilities.SchemeTonalSpot
import io.legato.kazusa.R
import io.legato.kazusa.base.VMBaseActivity
import io.legato.kazusa.constant.BookType
@@ -75,6 +84,7 @@ import io.legato.kazusa.utils.startActivity
import io.legato.kazusa.utils.toastOnUi
import io.legato.kazusa.utils.viewbindingdelegate.viewBinding
import io.legato.kazusa.utils.visible
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.Dispatchers.IO
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
@@ -161,12 +171,10 @@ class BookInfoActivity :
// binding.llInfo.setBackgroundColor(backgroundColor)
// binding.flAction.setBackgroundColor(bottomBackground)
//binding.flAction.applyNavigationBarPadding()
binding.btnShelf?.text = getString(R.string.remove_from_bookshelf)
binding.btnShelf.text = getString(R.string.remove_from_bookshelf)
binding.tvToc.text = getString(R.string.toc_s, getString(R.string.loading))
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1) {
binding.tvDetail?.let { it.revealOnFocusHint = false }
}
binding.tvDetail.revealOnFocusHint = false
viewModel.bookData.observe(this) { showBook(it) }
viewModel.chapterListData.observe(this) { upLoading(false, it) }
@@ -340,8 +348,8 @@ class BookInfoActivity :
tvAuthor.text = getString(R.string.author_show, book.getRealAuthor())
tvOrigin.text = getString(R.string.origin_show, book.originName)
tvLasted.text = getString(R.string.lasted_show, book.latestChapterTitle)
tvDetail?.let { it.text = book.getDisplayIntro() }
llToc?.visible(!book.isWebFile)
tvDetail.let { it.text = book.getDisplayIntro() }
llToc.visible(!book.isWebFile)
upTvBookshelf()
upKinds(book)
upGroup(book.group)
@@ -412,10 +420,10 @@ class BookInfoActivity :
}
private fun upTvBookshelf() {
binding.btnShelf?.apply {
binding.btnShelf.apply {
if (viewModel.inBookshelf) {
text = getString(R.string.remove_from_bookshelf)
icon = ContextCompat.getDrawable(context, R.drawable.ic_clear_all)
icon = ContextCompat.getDrawable(context, R.drawable.ic_star_fill)
} else {
text = getString(R.string.add_to_bookshelf)
icon = ContextCompat.getDrawable(context, R.drawable.ic_star)
@@ -427,13 +435,15 @@ class BookInfoActivity :
private fun upGroup(groupId: Long) {
viewModel.loadGroup(groupId) {
if (it.isNullOrEmpty()) {
binding.tvGroup.text = if (book?.isLocal == true) {
getString(R.string.group_s, getString(R.string.local_no_group))
binding.tvChangeGroup.text = if (book?.isLocal == true) {
getString(R.string.local_no_group)
} else {
getString(R.string.group_s, getString(R.string.no_group))
getString(R.string.no_group)
}
binding.tvChangeGroup.setIconResource(R.drawable.ic_groups)
} else {
binding.tvGroup.text = getString(R.string.group_s, it)
binding.tvChangeGroup.text = getString(R.string.group_s, it)
binding.tvChangeGroup.setIconResource(R.drawable.ic_groups_fill)
}
}
}
@@ -452,7 +462,7 @@ class BookInfoActivity :
}
true
}
btnRead?.setOnClickListener {
btnRead.setOnClickListener {
viewModel.getBook()?.let { book ->
if (book.isWebFile) {
showWebFileDownloadAlert {
@@ -463,7 +473,7 @@ class BookInfoActivity :
}
}
}
btnShelf?.setOnClickListener {
btnShelf.setOnClickListener {
viewModel.getBook()?.let { book ->
if (viewModel.inBookshelf) {
deleteBook()
@@ -490,7 +500,7 @@ class BookInfoActivity :
}
}
}
btnChangeSource?.setOnClickListener {
btnChangeSource.setOnClickListener {
viewModel.getBook()?.let { book ->
showDialogFragment(ChangeBookSourceDialog(book.name, book.author))
}
@@ -533,7 +543,7 @@ class BookInfoActivity :
}
}
}
refreshLayout?.setOnRefreshListener {
refreshLayout.setOnRefreshListener {
refreshLayout.isRefreshing = false
refreshBook()
}
@@ -784,4 +794,16 @@ class BookInfoActivity :
}
}
// 扩展函数:从Drawable中提取主色调
suspend fun Drawable.extractDominantColor(): Int = withContext(Dispatchers.Default) {
// 将Drawable转换为Bitmap
val bitmap = (this@extractDominantColor as? BitmapDrawable)?.bitmap ?: return@withContext Color.TRANSPARENT
// 生成Palette
val palette = Palette.from(bitmap).generate()
// 返回主色调,若未找到则使用默认值
palette.getDominantColor(Color.WHITE)
}
}
@@ -101,7 +101,7 @@ class SourcePickerDialog : BaseDialogFragment(R.layout.dialog_source_picker),
private fun initMenu() {
toolBar.setOnMenuItemClickListener(this)
toolBar.inflateMenu(R.menu.source_picker)
toolBar.menu.applyTint(requireContext())
//toolBar.menu.applyTint(requireContext())
}
override fun onMenuItemClick(item: MenuItem?): Boolean {
@@ -121,9 +121,9 @@ class ReadMangaActivity : VMBaseActivity<ActivityMangaBinding, ReadMangaViewMode
private val loadMoreView by lazy {
LoadMoreView(this).apply {
setBackgroundColor(getCompatColor(R.color.book_ant_10))
setLoadingColor(R.color.white)
setLoadingTextColor(R.color.white)
// setBackgroundColor(getCompatColor(R.color.book_ant_10))
// setLoadingColor(R.color.white)
// setLoadingTextColor(R.color.white)
}
}
@@ -78,7 +78,7 @@ class ContentEditDialog : BaseDialogFragment(R.layout.dialog_content_edit) {
private fun initMenu() {
binding.toolBar.inflateMenu(R.menu.content_edit)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
binding.toolBar.setOnMenuItemClickListener {
when (it.itemId) {
R.id.menu_save -> {
@@ -34,6 +34,7 @@ import io.legato.kazusa.data.entities.Book
import io.legato.kazusa.data.entities.BookChapter
import io.legato.kazusa.data.entities.BookProgress
import io.legato.kazusa.data.entities.BookSource
import io.legato.kazusa.data.entities.ReplaceRule
import io.legato.kazusa.exception.NoStackTraceException
import io.legato.kazusa.help.AppWebDav
import io.legato.kazusa.help.IntentData
@@ -508,6 +509,7 @@ class ReadBookActivity : BaseReadBookActivity(),
}
}
R.id.menu_setting_replace -> openReplaceRule()
R.id.menu_download -> showDownloadDialog()
R.id.menu_add_bookmark -> addBookmark()
R.id.menu_simulated_reading -> showSimulatedReading()
@@ -1203,19 +1205,23 @@ class ReadBookActivity : BaseReadBookActivity(),
/**
* 显示阅读样式配置
*/
override fun showReadStyle() {
// override fun showReadStyle() {
// showDialogFragment<ReadStyleDialog>()
// }
//
// /**
// * 显示更多设置
// */
// override fun showMoreSetting() {
// showDialogFragment<MoreConfigDialog>()
// }
//
override fun showSearchSetting() {
showDialogFragment<ReadStyleDialog>()
}
/**
* 显示更多设置
*/
override fun showMoreSetting() {
showDialogFragment<MoreConfigDialog>()
}
override fun showSearchSetting() {
showDialogFragment<MoreConfigDialog>()
override fun showReadStyle() {
showDialogFragment<ReadStyleDialog>()
}
/**
@@ -31,6 +31,7 @@ import io.legato.kazusa.lib.dialogs.alert
//import io.legado.app.lib.theme.primaryColor
//import io.legado.app.lib.theme.primaryTextColor
import io.legato.kazusa.model.ReadBook
import io.legato.kazusa.ui.book.read.config.MoreConfigDialog
import io.legato.kazusa.ui.browser.WebViewActivity
import io.legato.kazusa.ui.widget.seekbar.SeekBarChangeListener
import io.legato.kazusa.utils.ConstraintModify
@@ -44,6 +45,7 @@ import io.legato.kazusa.utils.loadAnimation
import io.legato.kazusa.utils.modifyBegin
import io.legato.kazusa.utils.openUrl
import io.legato.kazusa.utils.putPrefBoolean
import io.legato.kazusa.utils.showDialogFragment
import io.legato.kazusa.utils.startActivity
import io.legato.kazusa.utils.visible
import splitties.views.onClick
@@ -159,11 +161,11 @@ class ReadMenu @JvmOverloads constructor(
}
private fun initView(reset: Boolean = false) = binding.run {
if (AppConfig.isNightTheme) {
fabNightTheme.setImageResource(R.drawable.ic_daytime)
} else {
fabNightTheme.setImageResource(R.drawable.ic_brightness)
}
// if (AppConfig.isNightTheme) {
// fabNightTheme.setIconResource(R.drawable.ic_daytime)
// } else {
// fabNightTheme.setIconResource(R.drawable.ic_brightness)
// }
initAnimation()
if (immersiveMenu) {
// val lightTextColor = ColorUtils.withAlpha(ColorUtils.lightenColor(textColor), 0.75f)
@@ -223,7 +225,7 @@ class ReadMenu @JvmOverloads constructor(
/**
* 确保视图不被导航栏遮挡
*/
applyNavigationBarPadding()
binding.bottomView.applyNavigationBarPadding()
}
fun reset() {
@@ -361,8 +363,6 @@ class ReadMenu @JvmOverloads constructor(
}
tvChapterName.setOnClickListener(chapterViewClickListener)
tvChapterName.setOnLongClickListener(chapterViewLongClickListener)
tvChapterUrl.setOnClickListener(chapterViewClickListener)
tvChapterUrl.setOnLongClickListener(chapterViewLongClickListener)
//书源操作
tvSourceAction.onClick {
sourceMenu.menu.findItem(R.id.menu_login).isVisible =
@@ -446,13 +446,13 @@ class ReadMenu @JvmOverloads constructor(
}
//替换
fabReplaceRule.setOnClickListener { callBack.openReplaceRule() }
//fabReplaceRule.setOnClickListener { callBack.openReplaceRule() }
//夜间模式
fabNightTheme.setOnClickListener {
AppConfig.isNightTheme = !AppConfig.isNightTheme
ThemeConfig.applyDayNight(context)
}
// fabNightTheme.setOnClickListener {
// AppConfig.isNightTheme = !AppConfig.isNightTheme
// ThemeConfig.applyDayNight(context)
// }
//上一章
tvPre.setOnClickListener { ReadBook.moveToPrevChapter(upContent = true, toLast = false) }
@@ -461,37 +461,31 @@ class ReadMenu @JvmOverloads constructor(
tvNext.setOnClickListener { ReadBook.moveToNextChapter(true) }
//目录
llCatalog.setOnClickListener {
ivCatalog.setOnClickListener {
runMenuOut {
callBack.openChapterList()
}
}
//朗读
llReadAloud.setOnClickListener {
ivReadAloud.setOnClickListener {
runMenuOut {
callBack.onClickReadAloud()
}
}
llReadAloud.onLongClick {
ivReadAloud.onLongClick {
runMenuOut {
callBack.showReadAloudDialog()
}
}
//界面
llFont.setOnClickListener {
//设置
ivSetting.setOnClickListener {
runMenuOut {
callBack.showReadStyle()
}
}
//设置
llSetting.setOnClickListener {
runMenuOut {
callBack.showMoreSetting()
}
}
}
private fun initAnimation() {
@@ -500,13 +494,13 @@ class ReadMenu @JvmOverloads constructor(
}
fun upBookView() {
binding.titleBar.title = ReadBook.book?.name
binding.titleBar.title = " "
binding.tvBookName.text = ReadBook.book?.name
ReadBook.curTextChapter?.let {
binding.tvChapterName.text = it.title
binding.tvChapterName.visible()
if (!ReadBook.isLocalBook) {
binding.tvChapterUrl.text = it.chapter.getAbsoluteURL()
binding.tvChapterUrl.visible()
//binding.tvChapterUrl.visible()
} else {
binding.tvChapterUrl.gone()
}
@@ -514,7 +508,6 @@ class ReadMenu @JvmOverloads constructor(
binding.tvPre.isEnabled = ReadBook.durChapterIndex != 0
binding.tvNext.isEnabled = ReadBook.durChapterIndex != ReadBook.simulatedChapterSize - 1
} ?: let {
binding.tvChapterName.gone()
binding.tvChapterUrl.gone()
}
}
@@ -526,20 +519,16 @@ class ReadMenu @JvmOverloads constructor(
when (AppConfig.progressBarBehavior) {
"page" -> {
ReadBook.curTextChapter?.let { chapter ->
if (chapter.pageSize > 0 && ReadBook.durPageIndex > 0) {
if (chapter.pageSize >= 0 && ReadBook.durPageIndex >= 0) {
valueFrom = 1f
valueTo = chapter.pageSize.toFloat().coerceAtLeast(2f)
value = (ReadBook.durPageIndex).coerceIn(1, chapter.pageSize).toFloat()
stepSize = 1f
value = (ReadBook.durPageIndex).coerceIn(1, chapter.pageSize).toFloat()
} else {
valueFrom = 1f
valueTo = 2f
value = 1f
value = 0f
valueFrom = 0f
valueTo = 1000f
}
}?: run {
valueFrom = 1f
valueTo = 2f
value = 1f
}
}
@@ -548,12 +537,12 @@ class ReadMenu @JvmOverloads constructor(
{
valueFrom = 1f
valueTo = ReadBook.simulatedChapterSize.toFloat().coerceAtLeast(2f)
value = (ReadBook.durChapterIndex).coerceIn(1, ReadBook.simulatedChapterSize).toFloat()
stepSize = 1f
value = (ReadBook.durChapterIndex).coerceIn(1, ReadBook.simulatedChapterSize).toFloat()
} else {
valueFrom = 1f
valueTo = 2f
value = 1f
valueFrom = 0f
value = 0f
valueTo = 1000f
}
}
}
@@ -579,15 +568,15 @@ class ReadMenu @JvmOverloads constructor(
// }
fun setSeekPage(seek: Int) {
binding.seekReadPage.value = 1f
binding.seekReadPage.value = seek.toFloat() + 1
}
fun setAutoPage(autoPage: Boolean) = binding.run {
if (autoPage) {
fabAutoPage.setImageResource(R.drawable.ic_auto_page_stop)
fabAutoPage.setIconResource(R.drawable.ic_auto_page_stop)
fabAutoPage.contentDescription = context.getString(R.string.auto_next_page_stop)
} else {
fabAutoPage.setImageResource(R.drawable.ic_auto_page)
fabAutoPage.setIconResource(R.drawable.ic_auto_page)
fabAutoPage.contentDescription = context.getString(R.string.auto_next_page)
}
//fabAutoPage.setColorFilter(textColor)
@@ -615,7 +604,6 @@ class ReadMenu @JvmOverloads constructor(
fun openSourceEditActivity()
fun openBookInfoActivity()
fun showReadStyle()
fun showMoreSetting()
fun showReadAloudDialog()
fun upSystemUiVisibility()
fun onClickReadAloud()
@@ -71,7 +71,7 @@ class HttpTtsEditDialog() : BaseBottomSheetDialogFragment(R.layout.dialog_http_t
fun initMenu() {
binding.toolBar.inflateMenu(R.menu.speak_engine_edit)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
binding.toolBar.setOnMenuItemClickListener(this)
}
@@ -10,6 +10,7 @@ import android.view.ViewConfiguration
import android.view.ViewGroup
import android.widget.LinearLayout
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
import io.legato.kazusa.R
import io.legato.kazusa.base.BasePrefDialogFragment
import io.legato.kazusa.constant.EventBus
@@ -31,20 +32,6 @@ import io.legato.kazusa.utils.removePref
class MoreConfigDialog : BasePrefDialogFragment() {
private val readPreferTag = "readPreferenceFragment"
override fun onStart() {
super.onStart()
// dialog?.window?.run {
// clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND)
// setBackgroundDrawableResource(R.color.background)
// decorView.setPadding(0, 0, 0, 0)
// val attr = attributes
// attr.dimAmount = 0.0f
// attr.gravity = Gravity.BOTTOM
// attributes = attr
// setLayout(ViewGroup.LayoutParams.MATCH_PARENT, 360.dpToPx())
// }
}
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
@@ -67,12 +54,7 @@ class MoreConfigDialog : BasePrefDialogFragment() {
.commit()
}
override fun onDismiss(dialog: DialogInterface) {
super.onDismiss(dialog)
(activity as ReadBookActivity).bottomDialog--
}
class ReadPreferenceFragment : PreferenceFragment(),
class ReadPreferenceFragment : PreferenceFragmentCompat(),
SharedPreferences.OnSharedPreferenceChangeListener {
private val slopSquare by lazy { ViewConfiguration.get(requireContext()).scaledTouchSlop }
@@ -198,6 +180,5 @@ class MoreConfigDialog : BasePrefDialogFragment() {
getString(R.string.page_touch_slop_summary, value)
}
}
}
}
@@ -29,6 +29,7 @@ import splitties.views.onLongClick
import androidx.core.graphics.drawable.toDrawable
import androidx.transition.TransitionManager
import com.google.android.material.bottomsheet.BottomSheetBehavior
import io.legato.kazusa.help.config.ThemeConfig
class ReadStyleDialog : BaseBottomSheetDialogFragment(R.layout.dialog_read_book_style),
FontSelectDialog.CallBack {
@@ -39,21 +40,6 @@ class ReadStyleDialog : BaseBottomSheetDialogFragment(R.layout.dialog_read_book_
private lateinit var allSliders: List<DetailSeekBar>
override fun onStart() {
super.onStart()
// dialog?.window?.run {
// clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND)
// setBackgroundDrawableResource(R.color.background)
// decorView.setPadding(0, 0, 0, 0)
// val attr = attributes
// attr.dimAmount = 0.0f
// attr.gravity = Gravity.BOTTOM
// attributes = attr
// setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)
// }
}
override fun onFragmentCreated(view: View, savedInstanceState: Bundle?) {
(activity as ReadBookActivity).bottomDialog++
initView()
@@ -75,6 +61,11 @@ class ReadStyleDialog : BaseBottomSheetDialogFragment(R.layout.dialog_read_book_
// tvPageAnim.setTextColor(textColor)
// tvBgTs.setTextColor(textColor)
// tvShareLayout.setTextColor(textColor)
if (AppConfig.isNightTheme) {
tvDayNight.setIconResource(R.drawable.ic_daytime)
} else {
tvDayNight.setIconResource(R.drawable.ic_brightness)
}
dsbTextSize.valueFormat = {
(it + 5).toString()
}
@@ -133,6 +124,13 @@ class ReadStyleDialog : BaseBottomSheetDialogFragment(R.layout.dialog_read_book_
tvTip.setOnClickListener {
TipConfigDialog().show(childFragmentManager, "tipConfigDialog")
}
tvMore.setOnClickListener {
showDialogFragment<MoreConfigDialog>()
}
tvDayNight.setOnClickListener {
AppConfig.isNightTheme = !AppConfig.isNightTheme
ThemeConfig.applyDayNight(requireContext())
}
// rgPageAnim.setOnCheckedChangeListener { _, checkedId ->
// ReadBook.book?.setPageAnim(-1)
// ReadBookConfig.pageAnim = binding.rgPageAnim.getIndexById(checkedId)
@@ -299,6 +297,5 @@ class ReadStyleDialog : BaseBottomSheetDialogFragment(R.layout.dialog_read_book_
}
}
}
}
}
@@ -161,7 +161,7 @@ class SpeakEngineDialog() : BaseBottomSheetDialogFragment(R.layout.dialog_recycl
private fun initMenu() = binding.run {
toolBar.inflateMenu(R.menu.speak_engine)
toolBar.menu.applyTint(requireContext())
//toolBar.menu.applyTint(requireContext())
toolBar.setOnMenuItemClickListener(this@SpeakEngineDialog)
}
@@ -26,6 +26,7 @@ import io.legato.kazusa.utils.applyStatusBarPadding
import io.legato.kazusa.utils.dpToPx
import io.legato.kazusa.utils.gone
import io.legato.kazusa.utils.setTextIfNotEqual
import io.legato.kazusa.utils.statusBarHeight
import splitties.views.backgroundColor
import java.util.Date
@@ -59,11 +60,9 @@ class PageView(context: Context) : FrameLayout(context) {
}
init {
if (!isInEditMode) {
upStyle()
binding.vwStatusBar.applyStatusBarPadding()
binding.vwNavigationBar.applyNavigationBarPadding()
}
upStyle()
binding.vwStatusBar.applyStatusBarPadding()
binding.vwNavigationBar.applyNavigationBarPadding()
}
override fun onSizeChanged(w: Int, h: Int, oldw: Int, oldh: Int) {
@@ -118,8 +117,8 @@ class PageView(context: Context) : FrameLayout(context) {
* 显示状态栏时隐藏header
*/
fun upStatusBar() = with(binding.vwStatusBar) {
// setPadding(paddingLeft, context.statusBarHeight, paddingRight, paddingBottom)
isGone = ReadBookConfig.hideStatusBar || readBookActivity?.isInMultiWindow == true
setPadding(paddingLeft, context.statusBarHeight, paddingRight, paddingBottom)
isGone = ReadBookConfig.hideStatusBar
}
fun upNavigationBar() {
@@ -60,7 +60,7 @@ class SearchScopeDialog : BaseDialogFragment(R.layout.dialog_search_scope) {
private fun initMenu() {
binding.toolBar.inflateMenu(R.menu.book_search_scope)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
}
private fun initSearchView() {
@@ -46,7 +46,7 @@ class GroupManageDialog : BaseDialogFragment(R.layout.dialog_recycler_view),
// binding.toolBar.setBackgroundColor(primaryColor)
binding.toolBar.title = getString(R.string.group_manage)
binding.toolBar.inflateMenu(R.menu.group_manage)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
binding.toolBar.setOnMenuItemClickListener(this)
binding.recyclerView.layoutManager = LinearLayoutManager(requireContext())
binding.recyclerView.addItemDecoration(VerticalDivider(requireContext()))
@@ -90,7 +90,7 @@ class TxtTocRuleDialog() : BaseDialogFragment(R.layout.dialog_toc_regex),
durRegex = arguments?.getString("tocRegex")
binding.toolBar.setTitle(R.string.txt_toc_rule)
binding.toolBar.inflateMenu(R.menu.txt_toc_rule)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
binding.toolBar.setOnMenuItemClickListener(this)
initView()
initData()
@@ -51,7 +51,7 @@ class TxtTocRuleEditDialog() : BaseBottomSheetDialogFragment(R.layout.dialog_toc
private fun initMenu() {
binding.toolBar.inflateMenu(R.menu.txt_toc_rule_edit)
binding.toolBar.menu.applyTint(requireContext())
//binding.toolBar.menu.applyTint(requireContext())
binding.toolBar.setOnMenuItemClickListener(this)
}