mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-11-04 08:08:55 +01:00 
			
		
		
		
	Fix missing inversion in tap zones help overlay. (#9812)
This commit is contained in:
		@@ -61,7 +61,7 @@ class ReaderNavigationOverlayView(context: Context, attributeSet: AttributeSet)
 | 
			
		||||
    override fun onDraw(canvas: Canvas) {
 | 
			
		||||
        if (navigation == null) return
 | 
			
		||||
 | 
			
		||||
        navigation?.regions?.forEach { region ->
 | 
			
		||||
        navigation?.getRegions()?.forEach { region ->
 | 
			
		||||
            val rect = region.rectF
 | 
			
		||||
 | 
			
		||||
            // Scale rect from 1f,1f to screen width and height
 | 
			
		||||
 
 | 
			
		||||
@@ -32,15 +32,19 @@ abstract class ViewerNavigation {
 | 
			
		||||
 | 
			
		||||
    private var constantMenuRegion: RectF = RectF(0f, 0f, 1f, 0.05f)
 | 
			
		||||
 | 
			
		||||
    abstract var regions: List<Region>
 | 
			
		||||
 | 
			
		||||
    var invertMode: ReaderPreferences.TappingInvertMode = ReaderPreferences.TappingInvertMode.NONE
 | 
			
		||||
 | 
			
		||||
    protected abstract var regionList: List<Region>
 | 
			
		||||
 | 
			
		||||
    /** Returns regions with applied inversion. */
 | 
			
		||||
    fun getRegions(): List<Region> {
 | 
			
		||||
        return regionList.map { it.invert(invertMode) }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    fun getAction(pos: PointF): NavigationRegion {
 | 
			
		||||
        val x = pos.x
 | 
			
		||||
        val y = pos.y
 | 
			
		||||
        val region = regions.map { it.invert(invertMode) }
 | 
			
		||||
            .find { it.rectF.contains(x, y) }
 | 
			
		||||
        val region = getRegions().find { it.rectF.contains(x, y) }
 | 
			
		||||
        return when {
 | 
			
		||||
            region != null -> region.type
 | 
			
		||||
            constantMenuRegion.contains(x, y) -> NavigationRegion.MENU
 | 
			
		||||
 
 | 
			
		||||
@@ -14,5 +14,5 @@ import eu.kanade.tachiyomi.ui.reader.viewer.ViewerNavigation
 | 
			
		||||
*/
 | 
			
		||||
class DisabledNavigation : ViewerNavigation() {
 | 
			
		||||
 | 
			
		||||
    override var regions: List<Region> = emptyList()
 | 
			
		||||
    override var regionList: List<Region> = emptyList()
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -15,7 +15,7 @@ import eu.kanade.tachiyomi.ui.reader.viewer.ViewerNavigation
 | 
			
		||||
*/
 | 
			
		||||
class EdgeNavigation : ViewerNavigation() {
 | 
			
		||||
 | 
			
		||||
    override var regions: List<Region> = listOf(
 | 
			
		||||
    override var regionList: List<Region> = listOf(
 | 
			
		||||
        Region(
 | 
			
		||||
            rectF = RectF(0f, 0f, 0.33f, 1f),
 | 
			
		||||
            type = NavigationRegion.NEXT,
 | 
			
		||||
 
 | 
			
		||||
@@ -15,7 +15,7 @@ import eu.kanade.tachiyomi.ui.reader.viewer.ViewerNavigation
 | 
			
		||||
*/
 | 
			
		||||
class KindlishNavigation : ViewerNavigation() {
 | 
			
		||||
 | 
			
		||||
    override var regions: List<Region> = listOf(
 | 
			
		||||
    override var regionList: List<Region> = listOf(
 | 
			
		||||
        Region(
 | 
			
		||||
            rectF = RectF(0.33f, 0.33f, 1f, 1f),
 | 
			
		||||
            type = NavigationRegion.NEXT,
 | 
			
		||||
 
 | 
			
		||||
@@ -15,7 +15,7 @@ import eu.kanade.tachiyomi.ui.reader.viewer.ViewerNavigation
 | 
			
		||||
 */
 | 
			
		||||
open class LNavigation : ViewerNavigation() {
 | 
			
		||||
 | 
			
		||||
    override var regions: List<Region> = listOf(
 | 
			
		||||
    override var regionList: List<Region> = listOf(
 | 
			
		||||
        Region(
 | 
			
		||||
            rectF = RectF(0f, 0.33f, 0.33f, 0.66f),
 | 
			
		||||
            type = NavigationRegion.PREV,
 | 
			
		||||
 
 | 
			
		||||
@@ -15,7 +15,7 @@ import eu.kanade.tachiyomi.ui.reader.viewer.ViewerNavigation
 | 
			
		||||
 */
 | 
			
		||||
class RightAndLeftNavigation : ViewerNavigation() {
 | 
			
		||||
 | 
			
		||||
    override var regions: List<Region> = listOf(
 | 
			
		||||
    override var regionList: List<Region> = listOf(
 | 
			
		||||
        Region(
 | 
			
		||||
            rectF = RectF(0f, 0f, 0.33f, 1f),
 | 
			
		||||
            type = NavigationRegion.LEFT,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user