Add pan threshold

This commit is contained in:
Tusooa Zhu 2021-08-01 23:42:34 -04:00
parent 7d767f840b
commit 0421c06d47
No known key found for this signature in database
GPG Key ID: 7B467EDE43A08224
1 changed files with 15 additions and 3 deletions

View File

@ -16,6 +16,8 @@ library.add(
)
const onlyXAxis = ([x, y]) => [x, 0]
const SCALING_RESET_MIN = 1.1
const SCALING_ENABLE_MOVE_THRESHOLD = 1
const MediaModal = {
components: {
@ -90,11 +92,17 @@ const MediaModal = {
}
},
handleSwipePreview (offsets) {
this.$store.dispatch('swipeScaler/apply', { offsets: onlyXAxis(offsets) })
this.$store.dispatch('swipeScaler/apply', {
offsets: this.scaling > SCALING_ENABLE_MOVE_THRESHOLD ? offsets : onlyXAxis(offsets)
})
},
handleSwipeEnd (sign) {
if (this.scaling > SCALING_ENABLE_MOVE_THRESHOLD) {
this.$store.dispatch('swipeScaler/finish')
return
}
if (sign === 0) {
this.$store.dispatch('swipeScaler/revert')
this.$store.dispatch('swipeScaler/reset')
} else if (sign > 0) {
this.goNext()
} else {
@ -106,7 +114,11 @@ const MediaModal = {
this.$store.dispatch('swipeScaler/apply', { offsets, scaling })
},
handlePinchEnd () {
this.$store.dispatch('swipeScaler/finish')
if (this.scaling > SCALING_RESET_MIN) {
this.$store.dispatch('swipeScaler/finish')
} else {
this.$store.dispatch('swipeScaler/reset')
}
},
handleKeyupEvent (e) {
if (this.showing && e.keyCode === 27) { // escape