improving some double tap related things
This commit is contained in:
parent
0d6c9589e3
commit
bfaecc7eb5
2 changed files with 6 additions and 5 deletions
|
@ -75,7 +75,7 @@ dependencies {
|
||||||
implementation 'com.squareup.picasso:picasso:2.71828'
|
implementation 'com.squareup.picasso:picasso:2.71828'
|
||||||
implementation 'com.caverock:androidsvg-aar:1.3'
|
implementation 'com.caverock:androidsvg-aar:1.3'
|
||||||
implementation 'com.github.tibbi:gestureviews:985ba285fb'
|
implementation 'com.github.tibbi:gestureviews:985ba285fb'
|
||||||
implementation 'com.github.tibbi:subsampling-scale-image-view:7be04d9b93'
|
implementation 'com.github.tibbi:subsampling-scale-image-view:89c16d24c5'
|
||||||
kapt 'com.github.bumptech.glide:compiler:4.8.0' // keep it here too, not just in Commons, else loading SVGs wont work
|
kapt 'com.github.bumptech.glide:compiler:4.8.0' // keep it here too, not just in Commons, else loading SVGs wont work
|
||||||
|
|
||||||
kapt 'androidx.room:room-compiler:2.0.0'
|
kapt 'androidx.room:room-compiler:2.0.0'
|
||||||
|
|
|
@ -65,14 +65,12 @@ class PhotoFragment : ViewPagerFragment() {
|
||||||
)
|
)
|
||||||
|
|
||||||
var mCurrentRotationDegrees = 0
|
var mCurrentRotationDegrees = 0
|
||||||
private var mOriginalRotationDegrees = 0
|
|
||||||
private var mIsFragmentVisible = false
|
private var mIsFragmentVisible = false
|
||||||
private var mIsFullscreen = false
|
private var mIsFullscreen = false
|
||||||
private var mWasInit = false
|
private var mWasInit = false
|
||||||
private var mIsPanorama = false
|
private var mIsPanorama = false
|
||||||
private var mIsSubsamplingVisible = false // checking view.visibility is unreliable, use an extra variable for it
|
private var mIsSubsamplingVisible = false // checking view.visibility is unreliable, use an extra variable for it
|
||||||
private var mImageOrientation = -1
|
private var mImageOrientation = -1
|
||||||
private var mOriginalSubsamplingScale = 0f
|
|
||||||
private var mLoadZoomableViewHandler = Handler()
|
private var mLoadZoomableViewHandler = Handler()
|
||||||
private var mScreenWidth = 0
|
private var mScreenWidth = 0
|
||||||
private var mScreenHeight = 0
|
private var mScreenHeight = 0
|
||||||
|
@ -132,7 +130,7 @@ class PhotoFragment : ViewPagerFragment() {
|
||||||
}
|
}
|
||||||
|
|
||||||
subsampling_view.setOnTouchListener { v, event ->
|
subsampling_view.setOnTouchListener { v, event ->
|
||||||
if (subsampling_view.scale == mOriginalSubsamplingScale) {
|
if (subsampling_view.isZoomedOut()) {
|
||||||
handleEvent(event)
|
handleEvent(event)
|
||||||
}
|
}
|
||||||
false
|
false
|
||||||
|
@ -468,7 +466,6 @@ class PhotoFragment : ViewPagerFragment() {
|
||||||
val useWidth = if (mImageOrientation == ORIENTATION_ROTATE_90 || mImageOrientation == ORIENTATION_ROTATE_270) sHeight else sWidth
|
val useWidth = if (mImageOrientation == ORIENTATION_ROTATE_90 || mImageOrientation == ORIENTATION_ROTATE_270) sHeight else sWidth
|
||||||
val useHeight = if (mImageOrientation == ORIENTATION_ROTATE_90 || mImageOrientation == ORIENTATION_ROTATE_270) sWidth else sHeight
|
val useHeight = if (mImageOrientation == ORIENTATION_ROTATE_90 || mImageOrientation == ORIENTATION_ROTATE_270) sWidth else sHeight
|
||||||
doubleTapZoomScale = getDoubleTapZoomScale(useWidth, useHeight)
|
doubleTapZoomScale = getDoubleTapZoomScale(useWidth, useHeight)
|
||||||
mOriginalSubsamplingScale = scale
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onImageLoadError(e: Exception) {
|
override fun onImageLoadError(e: Exception) {
|
||||||
|
@ -480,6 +477,10 @@ class PhotoFragment : ViewPagerFragment() {
|
||||||
|
|
||||||
override fun onImageRotation(degrees: Int) {
|
override fun onImageRotation(degrees: Int) {
|
||||||
if (mCurrentRotationDegrees != degrees) {
|
if (mCurrentRotationDegrees != degrees) {
|
||||||
|
val fullRotation = rotation + degrees
|
||||||
|
val useWidth = if (fullRotation == 90 || fullRotation == 270) sHeight else sWidth
|
||||||
|
val useHeight = if (fullRotation == 90 || fullRotation == 270) sWidth else sHeight
|
||||||
|
doubleTapZoomScale = getDoubleTapZoomScale(useWidth, useHeight)
|
||||||
loadBitmap(degrees, false)
|
loadBitmap(degrees, false)
|
||||||
activity?.invalidateOptionsMenu()
|
activity?.invalidateOptionsMenu()
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue