Don't show navigation overlay if tap navigation is disabled (#5534)

* Don't show navigation overlay if tap navigation is disabled

* Apply feedback

(cherry picked from commit b7c2890250)
This commit is contained in:
Ivan Iskandar
2021-07-15 19:44:53 +07:00
committed by Jobobby04
parent 65b6f7df44
commit e0b62b9cd1
3 changed files with 7 additions and 10 deletions
@@ -19,17 +19,14 @@ class ReaderNavigationOverlayView(context: Context, attributeSet: AttributeSet)
private var navigation: ViewerNavigation? = null
fun setNavigation(navigation: ViewerNavigation, showOnStart: Boolean) {
if (!showOnStart && this.navigation == null) {
this.navigation = navigation
isVisible = false
return
}
fun setNavigation(navigation: ViewerNavigation, tappingEnabled: Boolean, showOnStart: Boolean) {
val firstLaunch = this.navigation == null
this.navigation = navigation
invalidate()
if (isVisible) return
if (isVisible || (!showOnStart && firstLaunch) || !tappingEnabled) {
return
}
viewPropertyAnimator = animate()
.alpha(1f)
@@ -138,7 +138,7 @@ abstract class PagerViewer(val activity: ReaderActivity) : BaseViewer {
config.navigationModeChangedListener = {
val showOnStart = config.navigationOverlayOnStart || config.forceNavigationOverlay
activity.binding.navigationOverlay.setNavigation(config.navigator, showOnStart)
activity.binding.navigationOverlay.setNavigation(config.navigator, config.tappingEnabled, showOnStart)
}
}
@@ -129,7 +129,7 @@ class WebtoonViewer(val activity: ReaderActivity, val isContinuous: Boolean = tr
config.navigationModeChangedListener = {
val showOnStart = config.navigationOverlayOnStart || config.forceNavigationOverlay
activity.binding.navigationOverlay.setNavigation(config.navigator, showOnStart)
activity.binding.navigationOverlay.setNavigation(config.navigator, config.tappingEnabled, showOnStart)
}
// SY -->