@@ -100,6 +100,7 @@ object PreferKey {
|
||||
const val mangaFooterConfig = "mangaFooterConfig"
|
||||
const val disableClickScroll = "disableClickScroll"
|
||||
const val enableMangaHorizontalScroll = "enableMangaHorizontalScroll"
|
||||
const val hideMangaTitle = "hideMangaTitle"
|
||||
const val mangaColorFilter = "mangaColorFilter"
|
||||
const val autoRefresh = "auto_refresh"
|
||||
const val defaultToRead = "defaultToRead"
|
||||
|
||||
@@ -656,5 +656,12 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
|
||||
set(value) {
|
||||
appCtx.putPrefString(PreferKey.mangaColorFilter, value)
|
||||
}
|
||||
|
||||
//禁用漫画内标题
|
||||
var hideMangaTitle
|
||||
get() = appCtx.getPrefBoolean(PreferKey.hideMangaTitle, false)
|
||||
set(value) {
|
||||
appCtx.putPrefBoolean(PreferKey.hideMangaTitle, value)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -189,7 +189,10 @@ class ReadMangaActivity : VMBaseActivity<ActivityMangaBinding, ReadMangaViewMode
|
||||
val mangaColorFilter =
|
||||
GSON.fromJsonObject<MangaColorFilterConfig>(AppConfig.mangaColorFilter).getOrNull()
|
||||
?: MangaColorFilterConfig()
|
||||
mAdapter.setMangaImageColorFilter(mangaColorFilter)
|
||||
mAdapter.run {
|
||||
setMangaImageColorFilter(mangaColorFilter)
|
||||
setHideTitle(AppConfig.hideMangaTitle)
|
||||
}
|
||||
setHorizontalScroll(AppConfig.enableMangaHorizontalScroll)
|
||||
binding.recyclerView.run {
|
||||
adapter = mAdapter
|
||||
@@ -560,6 +563,12 @@ class ReadMangaActivity : VMBaseActivity<ActivityMangaBinding, ReadMangaViewMode
|
||||
mPagerSnapHelper.attachToRecyclerView(binding.recyclerView)
|
||||
}
|
||||
}
|
||||
|
||||
R.id.menu_hide_manga_title -> {
|
||||
item.isChecked = !item.isChecked
|
||||
AppConfig.hideMangaTitle = item.isChecked
|
||||
mAdapter.setHideTitle(item.isChecked)
|
||||
}
|
||||
}
|
||||
return super.onCompatOptionsItemSelected(item)
|
||||
}
|
||||
@@ -635,6 +644,7 @@ class ReadMangaActivity : VMBaseActivity<ActivityMangaBinding, ReadMangaViewMode
|
||||
getString(R.string.manga_auto_page_speed, AppConfig.mangaAutoPageSpeed)
|
||||
menu.findItem(R.id.menu_enable_horizontal_scroll).isChecked =
|
||||
AppConfig.enableMangaHorizontalScroll
|
||||
menu.findItem(R.id.menu_hide_manga_title).isChecked = AppConfig.hideMangaTitle
|
||||
}
|
||||
|
||||
private fun setDisableMangaScale(disable: Boolean) {
|
||||
@@ -758,4 +768,19 @@ class ReadMangaActivity : VMBaseActivity<ActivityMangaBinding, ReadMangaViewMode
|
||||
ReadManga.durChapterPos = index
|
||||
}
|
||||
}
|
||||
|
||||
override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
|
||||
when (keyCode) {
|
||||
KeyEvent.KEYCODE_VOLUME_UP -> {
|
||||
scrollToPrev()
|
||||
return true
|
||||
}
|
||||
|
||||
KeyEvent.KEYCODE_VOLUME_DOWN -> {
|
||||
scrollToNext()
|
||||
return true
|
||||
}
|
||||
}
|
||||
return super.onKeyDown(keyCode, event)
|
||||
}
|
||||
}
|
||||
@@ -28,6 +28,7 @@ import io.legado.app.model.ReadManga
|
||||
import io.legado.app.ui.book.manga.config.MangaColorFilterConfig
|
||||
import io.legado.app.ui.book.manga.entities.MangaPage
|
||||
import io.legado.app.ui.book.manga.entities.ReaderLoading
|
||||
import io.legado.app.ui.widget.anima.explosion_field.Utils
|
||||
|
||||
|
||||
class MangaAdapter(private val context: Context) :
|
||||
@@ -42,6 +43,7 @@ class MangaAdapter(private val context: Context) :
|
||||
}
|
||||
|
||||
var isHorizontal = false
|
||||
private var hideTitle = false
|
||||
|
||||
private val mDiffCallback: DiffUtil.ItemCallback<Any> = object : DiffUtil.ItemCallback<Any>() {
|
||||
override fun areItemsTheSame(oldItem: Any, newItem: Any): Boolean {
|
||||
@@ -126,6 +128,9 @@ class MangaAdapter(private val context: Context) :
|
||||
fun onBind(item: ReaderLoading) {
|
||||
val message = item.mMessage
|
||||
binding.text.text = message
|
||||
binding.root.updateLayoutParams<ViewGroup.LayoutParams> {
|
||||
height = if (hideTitle) 0 else Utils.dp2Px(96)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -238,4 +243,9 @@ class MangaAdapter(private val context: Context) :
|
||||
mConfig = config
|
||||
notifyItemRangeChanged(0, itemCount)
|
||||
}
|
||||
|
||||
fun setHideTitle(hide: Boolean) {
|
||||
this.hideTitle=hide
|
||||
notifyItemRangeChanged(0, itemCount)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user