feat: hide scrollBar toggle (#238)
This commit is contained in:
parent
6e8bd08828
commit
291f61551a
9 changed files with 91 additions and 0 deletions
|
@ -88,6 +88,7 @@ class MangaReaderActivity : AppCompatActivity() {
|
|||
|
||||
private var isContVisible = false
|
||||
private var showProgressDialog = true
|
||||
private var hidescrollbar = false
|
||||
|
||||
private var maxChapterPage = 0L
|
||||
private var currentChapterPage = 0L
|
||||
|
@ -781,6 +782,38 @@ class MangaReaderActivity : AppCompatActivity() {
|
|||
hideBars()
|
||||
checkNotch()
|
||||
}
|
||||
// Hide the scrollbar completely
|
||||
if (defaultSettings.hideScrollBar) {
|
||||
binding.mangaReaderSliderContainer.visibility = View.GONE
|
||||
} else {
|
||||
if (defaultSettings.horizontalScrollBar) {
|
||||
binding.mangaReaderSliderContainer.updateLayoutParams {
|
||||
height = ViewGroup.LayoutParams.WRAP_CONTENT
|
||||
width = ViewGroup.LayoutParams.WRAP_CONTENT
|
||||
}
|
||||
|
||||
binding.mangaReaderSlider.apply {
|
||||
updateLayoutParams<ViewGroup.MarginLayoutParams> {
|
||||
width = ViewGroup.LayoutParams.MATCH_PARENT
|
||||
}
|
||||
rotation = 0f
|
||||
}
|
||||
|
||||
} else {
|
||||
binding.mangaReaderSliderContainer.updateLayoutParams {
|
||||
height = ViewGroup.LayoutParams.MATCH_PARENT
|
||||
width = 48f.px
|
||||
}
|
||||
|
||||
binding.mangaReaderSlider.apply {
|
||||
updateLayoutParams {
|
||||
width = binding.mangaReaderSliderContainer.height - 16f.px
|
||||
}
|
||||
rotation = 90f
|
||||
}
|
||||
}
|
||||
binding.mangaReaderSliderContainer.visibility = View.VISIBLE
|
||||
}
|
||||
//horizontal scrollbar
|
||||
if (defaultSettings.horizontalScrollBar) {
|
||||
binding.mangaReaderSliderContainer.updateLayoutParams {
|
||||
|
|
|
@ -127,6 +127,12 @@ class ReaderSettingsDialogFragment : BottomSheetDialogFragment() {
|
|||
activity.applySettings()
|
||||
}
|
||||
|
||||
binding.readerHideScrollBar.isChecked = settings.hideScrollBar
|
||||
binding.readerHideScrollBar.setOnCheckedChangeListener { _, isChecked ->
|
||||
settings.hideScrollBar = isChecked
|
||||
activity.applySettings()
|
||||
}
|
||||
|
||||
binding.readerHidePageNumbers.isChecked = settings.hidePageNumbers
|
||||
binding.readerHidePageNumbers.setOnCheckedChangeListener { _, isChecked ->
|
||||
settings.hidePageNumbers = isChecked
|
||||
|
|
|
@ -15,6 +15,7 @@ data class CurrentReaderSettings(
|
|||
var trueColors: Boolean = PrefManager.getVal(PrefName.TrueColors),
|
||||
var rotation: Boolean = PrefManager.getVal(PrefName.Rotation),
|
||||
var padding: Boolean = PrefManager.getVal(PrefName.Padding),
|
||||
var hideScrollBar: Boolean = PrefManager.getVal(PrefName.HideScrollBar),
|
||||
var hidePageNumbers: Boolean = PrefManager.getVal(PrefName.HidePageNumbers),
|
||||
var horizontalScrollBar: Boolean = PrefManager.getVal(PrefName.HorizontalScrollBar),
|
||||
var keepScreenOn: Boolean = PrefManager.getVal(PrefName.KeepScreenOn),
|
||||
|
|
|
@ -148,6 +148,12 @@ class ReaderSettingsActivity : AppCompatActivity() {
|
|||
PrefManager.setVal(PrefName.KeepScreenOn, isChecked)
|
||||
}
|
||||
|
||||
binding.readerSettingsHideScrollBar.isChecked = defaultSettings.hideScrollBar
|
||||
binding.readerSettingsHideScrollBar.setOnCheckedChangeListener { _, isChecked ->
|
||||
defaultSettings.hideScrollBar = isChecked
|
||||
PrefManager.setVal(PrefName.HideScrollBar, isChecked)
|
||||
}
|
||||
|
||||
binding.readerSettingsHidePageNumbers.isChecked = defaultSettings.hidePageNumbers
|
||||
binding.readerSettingsHidePageNumbers.setOnCheckedChangeListener { _, isChecked ->
|
||||
defaultSettings.hidePageNumbers = isChecked
|
||||
|
|
|
@ -119,6 +119,7 @@ enum class PrefName(val data: Pref) { //TODO: Split this into multiple files
|
|||
TrueColors(Pref(Location.Reader, Boolean::class, false)),
|
||||
Rotation(Pref(Location.Reader, Boolean::class, true)),
|
||||
Padding(Pref(Location.Reader, Boolean::class, true)),
|
||||
HideScrollBar(Pref(Location.Reader, Boolean::class, false)),
|
||||
HidePageNumbers(Pref(Location.Reader, Boolean::class, false)),
|
||||
HorizontalScrollBar(Pref(Location.Reader, Boolean::class, true)),
|
||||
KeepScreenOn(Pref(Location.Reader, Boolean::class, false)),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue