mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-31 14:27:57 +01:00 
			
		
		
		
	Invert tapping for Webtoon and Vertical
This commit is contained in:
		| @@ -32,7 +32,7 @@ abstract class ViewerConfig(preferences: PreferencesHelper) { | ||||
|             .register({ tappingEnabled = it }) | ||||
|  | ||||
|         preferences.readWithTappingInverted() | ||||
|                 .register({ tappingInverted = it }) | ||||
|             .register({ tappingInverted = it }) | ||||
|  | ||||
|         preferences.readWithLongTap() | ||||
|             .register({ longTapEnabled = it }) | ||||
|   | ||||
| @@ -81,17 +81,22 @@ abstract class PagerViewer(val activity: ReaderActivity) : BaseViewer { | ||||
|         }) | ||||
|         pager.tapListener = { event -> | ||||
|             val tappingInverted = config.tappingInverted | ||||
|  | ||||
|             if (this is VerticalPagerViewer) { | ||||
|                 val positionY = event.y | ||||
|                 val topSideTap = positionY < pager.height * 0.33f && config.tappingEnabled | ||||
|                 val bottomSideTap = positionY > pager.height * 0.66f && config.tappingEnabled | ||||
|  | ||||
|                 when { | ||||
|                     positionY < pager.height * 0.33f && config.tappingEnabled -> moveLeft() | ||||
|                     positionY > pager.height * 0.66f && config.tappingEnabled -> moveRight() | ||||
|                     topSideTap && !tappingInverted || bottomSideTap && tappingInverted -> moveLeft() | ||||
|                     bottomSideTap && !tappingInverted || topSideTap && tappingInverted -> moveRight() | ||||
|                     else -> activity.toggleMenu() | ||||
|                 } | ||||
|             } else { | ||||
|                 val positionX = event.x | ||||
|                 val leftSideTap = positionX < pager.width * 0.33f && config.tappingEnabled | ||||
|                 val rightSideTap = positionX > pager.width * 0.66f && config.tappingEnabled | ||||
|  | ||||
|                 when { | ||||
|                     leftSideTap && !tappingInverted || rightSideTap && tappingInverted -> moveLeft() | ||||
|                     rightSideTap && !tappingInverted || leftSideTap && tappingInverted -> moveRight() | ||||
|   | ||||
| @@ -94,9 +94,13 @@ class WebtoonViewer(val activity: ReaderActivity, val isContinuous: Boolean = tr | ||||
|         }) | ||||
|         recycler.tapListener = { event -> | ||||
|             val positionY = event.rawY | ||||
|             val tappingInverted = config.tappingInverted | ||||
|             val topSideTap = positionY < recycler.height * 0.33f && config.tappingEnabled | ||||
|             val bottomSideTap = positionY > recycler.height * 0.66f && config.tappingEnabled | ||||
|  | ||||
|             when { | ||||
|                 positionY < recycler.height * 0.33f && config.tappingEnabled -> scrollUp() | ||||
|                 positionY > recycler.height * 0.66f && config.tappingEnabled -> scrollDown() | ||||
|                 topSideTap && !tappingInverted || bottomSideTap && tappingInverted -> scrollUp() | ||||
|                 bottomSideTap && !tappingInverted || topSideTap && tappingInverted -> scrollDown() | ||||
|                 else -> activity.toggleMenu() | ||||
|             } | ||||
|         } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user