mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-31 14:27:57 +01:00 
			
		
		
		
	Scroll up/down when tapping top/bottom thirds in vertical reading modes (closes #3363)
This commit is contained in:
		| @@ -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() | ||||
|             } | ||||
|         } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user