1
1
###
2
- Quo Basic Gestures: tap , hold, singleTap , doubleTap
2
+ Quo Basic Gestures: touch , hold, doubleTap
3
3
4
4
@namespace Quo.Gestures
5
5
@class Basic
@@ -11,17 +11,16 @@ Quo Basic Gestures: tap, hold, singleTap, doubleTap
11
11
12
12
Quo .Gestures .add
13
13
name : " basic"
14
- events : [" tap " , " hold" , " singleTap " , " doubleTap" , " touch " ]
14
+ events : [" touch " , " hold" , " doubleTap" ]
15
15
16
16
handler : do (base = Quo .Gestures ) ->
17
17
GAP = 15
18
18
DELAY =
19
- TAP : 250
19
+ TAP : 200
20
20
DOUBLE_TAP : 400
21
21
HOLD : 400
22
22
23
23
_hold_timeout = null
24
- _simpletap_timeout = null
25
24
_valid = true
26
25
_target = null
27
26
_start = null
@@ -38,33 +37,36 @@ Quo.Gestures.add
38
37
39
38
move = (target , data ) ->
40
39
if _start isnt null
41
- xDiff = data[0 ].x - _start .x
42
- yDiff = data[0 ].y - _start .y
43
- if xDiff > GAP or yDiff > GAP or data .length > 1
44
- do cancel
40
+ diff = _calculateDiff _start, data[0 ]
41
+ do cancel if diff .x > GAP or diff .y > GAP or data .length > 1
45
42
46
43
end = (target , data ) ->
47
- base .trigger (target, " touch" , data[0 ])
48
44
return unless _start
45
+
46
+ diff = _calculateDiff _start, data[0 ]
47
+ return cancel () if diff .x isnt 0 or diff .y isnt 0
48
+
49
+ # base.trigger target, "touch", data[0]
49
50
clearTimeout _hold_timeout
50
51
now = new Date ()
51
52
if (now - _start .time ) < DELAY .TAP
52
53
if (now - _last_tap) < DELAY .DOUBLE_TAP
53
- clearTimeout _simpletap_timeout
54
- base .trigger (target, " doubleTap" , data[0 ])
54
+ base .trigger target, " doubleTap" , data[0 ]
55
55
_last_tap = null
56
56
else
57
57
_last_tap = now
58
- base .trigger (target, " tap" , data[0 ])
59
- _simpletap_timeout = setTimeout ->
60
- base .trigger (target, " singleTap" , data[0 ])
61
- , DELAY .DOUBLE_TAP + 5
58
+ # base.trigger target, "tap", data[0]
59
+ base .trigger target, " touch" , data[0 ]
62
60
63
61
cancel = () ->
64
62
_start = null
65
63
_valid = false
66
64
clearTimeout _hold_timeout
67
- clearTimeout _simpletap_timeout
65
+
66
+ _calculateDiff = (start , end ) ->
67
+ diff =
68
+ x : end .x - start .x
69
+ y : end .y - start .y
68
70
69
71
start : start
70
72
move : move
0 commit comments