mirror of
https://git.mihon.tech/mihonapp/mihon
synced 2024-11-23 21:55:57 +03:00
Scroll up/down when tapping top/bottom thirds in vertical reading modes (closes #3363)
This commit is contained in:
parent
d44503cb19
commit
789421c7a0
3 changed files with 17 additions and 10 deletions
|
@ -80,11 +80,20 @@ abstract class PagerViewer(val activity: ReaderActivity) : BaseViewer {
|
|||
}
|
||||
})
|
||||
pager.tapListener = { event ->
|
||||
val positionX = event.x
|
||||
when {
|
||||
positionX < pager.width * 0.33f && config.tappingEnabled -> moveLeft()
|
||||
positionX > pager.width * 0.66f && config.tappingEnabled -> moveRight()
|
||||
else -> activity.toggleMenu()
|
||||
if (this is VerticalPagerViewer) {
|
||||
val positionY = event.y
|
||||
when {
|
||||
positionY < pager.height * 0.33f && config.tappingEnabled -> moveLeft()
|
||||
positionY > pager.height * 0.66f && config.tappingEnabled -> moveRight()
|
||||
else -> activity.toggleMenu()
|
||||
}
|
||||
} else {
|
||||
val positionX = event.x
|
||||
when {
|
||||
positionX < pager.width * 0.33f && config.tappingEnabled -> moveLeft()
|
||||
positionX > pager.width * 0.66f && config.tappingEnabled -> moveRight()
|
||||
else -> activity.toggleMenu()
|
||||
}
|
||||
}
|
||||
}
|
||||
pager.longTapListener = f@{
|
||||
|
|
|
@ -24,6 +24,7 @@ class PagerViewerAdapter(private val viewer: PagerViewer) : ViewPagerAdapter() {
|
|||
private set
|
||||
|
||||
var currentChapter: ReaderChapter? = null
|
||||
|
||||
/**
|
||||
* Updates this adapter with the given [chapters]. It handles setting a few pages of the
|
||||
* next/previous chapter to allow seamless transitions and inverting the pages if the viewer
|
||||
|
|
|
@ -93,13 +93,10 @@ class WebtoonViewer(val activity: ReaderActivity, val isContinuous: Boolean = tr
|
|||
}
|
||||
})
|
||||
recycler.tapListener = { event ->
|
||||
val positionX = event.rawX
|
||||
val positionY = event.rawY
|
||||
when {
|
||||
positionY < recycler.height * 0.25 && config.tappingEnabled -> scrollUp()
|
||||
positionY > recycler.height * 0.75 && config.tappingEnabled -> scrollDown()
|
||||
positionX < recycler.width * 0.33 && config.tappingEnabled -> scrollUp()
|
||||
positionX > recycler.width * 0.66 && config.tappingEnabled -> scrollDown()
|
||||
positionY < recycler.height * 0.33f && config.tappingEnabled -> scrollUp()
|
||||
positionY > recycler.height * 0.66f && config.tappingEnabled -> scrollDown()
|
||||
else -> activity.toggleMenu()
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue