mirror of
https://github.com/FossifyOrg/Gallery.git
synced 2025-03-12 06:30:06 +01:00
Double tap zoom
This commit is contained in:
parent
a948355d2e
commit
85e8838980
1 changed files with 10 additions and 0 deletions
|
@ -89,6 +89,7 @@ class PhotoFragment : ViewPagerFragment() {
|
|||
private var mScreenWidth = 0
|
||||
private var mScreenHeight = 0
|
||||
private var mCurrentGestureViewZoom = 1f
|
||||
private var mIsTouched = false
|
||||
|
||||
private var mStoredShowExtendedDetails = false
|
||||
private var mStoredHideExtendedDetails = false
|
||||
|
@ -145,11 +146,20 @@ class PhotoFragment : ViewPagerFragment() {
|
|||
|
||||
gesturesView.controller.addOnStateChangeListener(object : GestureController.OnStateChangeListener {
|
||||
override fun onStateChanged(state: State) {
|
||||
if (!mIsTouched) {
|
||||
gesturesView.controller.settings.apply {
|
||||
if (hasImageSize() && hasViewportSize()) {
|
||||
doubleTapZoom = (viewportWidth.toFloat() / imageWidth).coerceAtLeast(viewportHeight.toFloat() / imageHeight)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
mCurrentGestureViewZoom = state.zoom
|
||||
}
|
||||
})
|
||||
|
||||
gesturesView.setOnTouchListener { v, event ->
|
||||
mIsTouched = true
|
||||
if (mCurrentGestureViewZoom == 1f) {
|
||||
handleEvent(event)
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue