@nativescript-community/gesturehandler 2.0.20 → 2.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,417 @@
1
+ import { Utils, View } from '@nativescript/core';
2
+ import { GestureStateTypes, GestureTypes, GesturesObserver as NGesturesObserver, SwipeDirection, TouchAction, toString as gestureToString } from '@nativescript/core/ui/gestures';
3
+ import { Handler, Manager } from './gesturehandler';
4
+ import { GestureHandlerStateEvent, GestureHandlerTouchEvent, GestureState, HandlerType, ROOT_GESTURE_HANDLER_TAG } from './gesturehandler.common';
5
+ export function observe(target, type, callback, context) {
6
+ if (!callback) {
7
+ return null;
8
+ }
9
+ const observer = new GesturesObserver(target, callback, context);
10
+ observer.observe(type);
11
+ return observer;
12
+ }
13
+ let TAG = 0;
14
+ export class GesturesObserver {
15
+ //@ts-ignore
16
+ get callback() {
17
+ return this._callback;
18
+ }
19
+ get target() {
20
+ return this._target;
21
+ }
22
+ //@ts-ignore
23
+ get context() {
24
+ return this._context;
25
+ }
26
+ constructor(target, callback, context) {
27
+ this._eventData = {};
28
+ this._target = target;
29
+ if (!target['TAP_HANDLER_TAG']) {
30
+ target['TAP_HANDLER_TAG'] = TAG++;
31
+ }
32
+ if (!target['LONGPRESS_HANDLER_TAG']) {
33
+ target['LONGPRESS_HANDLER_TAG'] = TAG++;
34
+ }
35
+ if (!target['DOUBLE_TAP_HANDLER_TAG']) {
36
+ target['DOUBLE_TAP_HANDLER_TAG'] = TAG++;
37
+ }
38
+ if (!target['PINCH_HANDLER_TAG']) {
39
+ target['PINCH_HANDLER_TAG'] = TAG++;
40
+ }
41
+ if (!target['PAN_HANDLER_TAG']) {
42
+ target['PAN_HANDLER_TAG'] = TAG++;
43
+ }
44
+ this._callback = callback;
45
+ this._context = context;
46
+ }
47
+ disconnect() {
48
+ this._detach();
49
+ if (this.target) {
50
+ this.target.off('loaded', this._onTargetLoaded);
51
+ this.target.off('unloaded', this._onTargetUnloaded);
52
+ this._onTargetLoaded = null;
53
+ this._onTargetUnloaded = null;
54
+ }
55
+ // clears target, context and callback references
56
+ // remove gesture observer from map
57
+ if (this.target) {
58
+ const list = this.target.getGestureObservers(this.type);
59
+ if (list && list.length > 0) {
60
+ for (let i = 0; i < list.length; i++) {
61
+ if (list[i].callback === this.callback) {
62
+ break;
63
+ }
64
+ }
65
+ list.length = 0;
66
+ delete this.target._gestureObservers[this.type];
67
+ if (this.target._gestureHandlers && this.target._gestureHandlers[this.type]) {
68
+ delete this.target._gestureHandlers[this.type];
69
+ }
70
+ }
71
+ }
72
+ if (this.nObserver) {
73
+ this.nObserver.disconnect();
74
+ this.nObserver = null;
75
+ }
76
+ this._target = null;
77
+ this._callback = null;
78
+ this._context = null;
79
+ this.gestureHandler = null;
80
+ }
81
+ observe(type) {
82
+ if (this.target) {
83
+ this.type = type;
84
+ this._onTargetLoaded = (args) => {
85
+ this._attach(this.target, type);
86
+ };
87
+ this._onTargetUnloaded = (args) => {
88
+ this._detach();
89
+ };
90
+ this.target.on('loaded', this._onTargetLoaded);
91
+ this.target.on('unloaded', this._onTargetUnloaded);
92
+ if (this.target.isLoaded) {
93
+ this._attach(this.target, type);
94
+ }
95
+ }
96
+ }
97
+ _detach() {
98
+ if (this.gestureHandler) {
99
+ // dont detach events. It will be done on dispose
100
+ // this.gestureHandler.off(GestureHandlerStateEvent);
101
+ // this.gestureHandler.off(GestureHandlerTouchEvent);
102
+ this.gestureHandler.detachFromView(this.target);
103
+ }
104
+ this._notifyTouch = false;
105
+ this._eventData = {};
106
+ }
107
+ emitEvent(type, event) {
108
+ if (this.callback) {
109
+ let eventData = this._eventData[type];
110
+ if (!eventData) {
111
+ switch (type) {
112
+ case GestureTypes.pan:
113
+ this._eventData[type] = eventData = new PanGestureEventData(type);
114
+ break;
115
+ case GestureTypes.pinch:
116
+ this._eventData[type] = eventData = new PinchGestureEventData(type);
117
+ break;
118
+ case GestureTypes.swipe:
119
+ this._eventData[type] = eventData = new SwipeGestureEventData(type);
120
+ break;
121
+ default:
122
+ this._eventData[type] = eventData = new CommonGestureEventData(type);
123
+ break;
124
+ }
125
+ }
126
+ eventData.prepare(this.target, event.data);
127
+ _executeCallback(this, eventData);
128
+ // this.callback.call(this._context, {
129
+ // eventName: gestureToString(type),
130
+ // object: event.data.view,
131
+ // type,
132
+ // ...event.data,
133
+ // ...event.data.extraData,
134
+ // });
135
+ }
136
+ }
137
+ onGestureStateChange(type, triggerOnstate = -1) {
138
+ return (event) => {
139
+ if (triggerOnstate !== -1 && event.data.state !== triggerOnstate) {
140
+ return;
141
+ }
142
+ this.emitEvent(type, event);
143
+ };
144
+ }
145
+ onGestureTouchChange(type) {
146
+ return (event) => {
147
+ if (event.data.state === GestureState.ACTIVE) {
148
+ this.emitEvent(type, event);
149
+ }
150
+ };
151
+ }
152
+ _attach(target, type) {
153
+ if (type & GestureTypes.touch) {
154
+ this._notifyTouch = true;
155
+ if (__IOS__) {
156
+ // let s not reimplement it for touch
157
+ const nObserver = new NGesturesObserver(target, this.callback, this.context);
158
+ nObserver.observe(type);
159
+ this.nObserver = nObserver;
160
+ }
161
+ return;
162
+ }
163
+ const manager = Manager.getInstance();
164
+ // if (!target._gestureHandlers) {
165
+ // target._gestureHandlers = {};
166
+ // }
167
+ let gestureHandler = this.gestureHandler;
168
+ if (!gestureHandler) {
169
+ if (type & GestureTypes.tap) {
170
+ gestureHandler = manager.createGestureHandler(HandlerType.TAP, target['TAP_HANDLER_TAG'], {
171
+ simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG],
172
+ waitFor: [target['LONGPRESS_HANDLER_TAG'], target['DOUBLE_TAP_HANDLER_TAG']]
173
+ });
174
+ gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.tap, GestureState.ACTIVE), this);
175
+ }
176
+ if (type & GestureTypes.longPress) {
177
+ gestureHandler = manager.createGestureHandler(HandlerType.LONG_PRESS, target['LONGPRESS_HANDLER_TAG'], {
178
+ simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG]
179
+ });
180
+ gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.longPress, GestureState.ACTIVE), this);
181
+ }
182
+ if (type & GestureTypes.doubleTap) {
183
+ gestureHandler = manager.createGestureHandler(HandlerType.TAP, target['DOUBLE_TAP_HANDLER_TAG'], {
184
+ numberOfTaps: 2,
185
+ simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG]
186
+ });
187
+ gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.doubleTap, GestureState.ACTIVE), this);
188
+ }
189
+ if (type & GestureTypes.pinch) {
190
+ gestureHandler = manager.createGestureHandler(HandlerType.PINCH, target['PINCH_HANDLER_TAG'], {
191
+ simultaneousHandlers: [target['PAN_HANDLER_TAG'], ROOT_GESTURE_HANDLER_TAG]
192
+ });
193
+ gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.pinch), this);
194
+ gestureHandler.on(GestureHandlerTouchEvent, this.onGestureTouchChange(GestureTypes.pinch), this);
195
+ }
196
+ if (type & GestureTypes.swipe) {
197
+ gestureHandler = manager.createGestureHandler(HandlerType.FLING, TAG++, {
198
+ simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG]
199
+ });
200
+ gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.swipe, GestureState.ACTIVE), this);
201
+ }
202
+ if (type & GestureTypes.pan) {
203
+ gestureHandler = manager.createGestureHandler(HandlerType.PAN, target['PAN_HANDLER_TAG'], {
204
+ simultaneousHandlers: [target['PINCH_HANDLER_TAG'], ROOT_GESTURE_HANDLER_TAG]
205
+ });
206
+ gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.pan), this);
207
+ gestureHandler.on(GestureHandlerTouchEvent, this.onGestureTouchChange(GestureTypes.pan), this);
208
+ }
209
+ if (type & GestureTypes.rotation) {
210
+ gestureHandler = manager.createGestureHandler(HandlerType.ROTATION, TAG++, {
211
+ simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG]
212
+ });
213
+ gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.rotation, GestureState.ACTIVE), this);
214
+ gestureHandler.on(GestureHandlerTouchEvent, this.onGestureTouchChange(GestureTypes.rotation), this);
215
+ }
216
+ }
217
+ gestureHandler.attachToView(target);
218
+ this.gestureHandler = gestureHandler;
219
+ }
220
+ androidOnTouchEvent(motionEvent) {
221
+ if (this._notifyTouch) {
222
+ let eventData = this._eventData[GestureTypes.touch];
223
+ if (!eventData) {
224
+ eventData = this._eventData[GestureTypes.touch] = new TouchGestureEventData();
225
+ }
226
+ eventData.prepare(this.target, motionEvent);
227
+ _executeCallback(this, eventData);
228
+ }
229
+ }
230
+ }
231
+ class Pointer {
232
+ constructor(id, event) {
233
+ this.event = event;
234
+ this.ios = undefined;
235
+ this.android = id;
236
+ }
237
+ getX() {
238
+ return this.event.getX(this.android) / Utils.layout.getDisplayDensity();
239
+ }
240
+ getY() {
241
+ return this.event.getY(this.android) / Utils.layout.getDisplayDensity();
242
+ }
243
+ }
244
+ class GesturePointer {
245
+ constructor(index, x, y) {
246
+ this.x = x;
247
+ this.y = y;
248
+ this.android = index;
249
+ }
250
+ getX() {
251
+ return this.x;
252
+ }
253
+ getY() {
254
+ return this.y;
255
+ }
256
+ }
257
+ class CommonGestureEventData {
258
+ constructor(type) {
259
+ this.eventName = gestureToString(type);
260
+ this.type = type;
261
+ }
262
+ prepare(view, eventData) {
263
+ this.view = view;
264
+ this.object = view;
265
+ this._activePointers = undefined;
266
+ this._allPointers = undefined;
267
+ this.eventData = eventData;
268
+ switch (this.eventData.state) {
269
+ case GestureState.BEGAN:
270
+ this.state = GestureStateTypes.began;
271
+ break;
272
+ case GestureState.CANCELLED:
273
+ case GestureState.FAILED:
274
+ this.state = GestureStateTypes.cancelled;
275
+ break;
276
+ case GestureState.ACTIVE:
277
+ this.state = GestureStateTypes.changed;
278
+ break;
279
+ case GestureState.END:
280
+ this.state = GestureStateTypes.ended;
281
+ break;
282
+ }
283
+ }
284
+ get extraData() {
285
+ return this.eventData.extraData;
286
+ }
287
+ getPointerCount() {
288
+ return this.extraData.numberOfPointers;
289
+ }
290
+ getActivePointers() {
291
+ // Only one active pointer in Android
292
+ if (!this._activePointers) {
293
+ const positions = this.extraData.positions;
294
+ this._activePointers = [new GesturePointer(0, positions[0], positions[1])];
295
+ }
296
+ return this._activePointers;
297
+ }
298
+ getAllPointers() {
299
+ if (!this._allPointers) {
300
+ this._allPointers = [];
301
+ const positions = this.extraData.positions;
302
+ for (let i = 0; i < this.getPointerCount(); i++) {
303
+ this._allPointers.push(new GesturePointer(i, positions[i * 2], positions[i * 2 + 1]));
304
+ }
305
+ }
306
+ return this._allPointers;
307
+ }
308
+ getX() {
309
+ return this.extraData.x;
310
+ }
311
+ getY() {
312
+ return this.extraData.y;
313
+ }
314
+ getActionType(e) {
315
+ switch (e.getActionMasked()) {
316
+ case android.view.MotionEvent.ACTION_DOWN:
317
+ case android.view.MotionEvent.ACTION_POINTER_DOWN:
318
+ return TouchAction.down;
319
+ case android.view.MotionEvent.ACTION_MOVE:
320
+ return TouchAction.move;
321
+ case android.view.MotionEvent.ACTION_UP:
322
+ case android.view.MotionEvent.ACTION_POINTER_UP:
323
+ return TouchAction.up;
324
+ case android.view.MotionEvent.ACTION_CANCEL:
325
+ return TouchAction.cancel;
326
+ }
327
+ return '';
328
+ }
329
+ }
330
+ class TouchGestureEventData {
331
+ constructor() {
332
+ this.eventName = gestureToString(GestureTypes.touch);
333
+ this.type = GestureTypes.touch;
334
+ this.ios = undefined;
335
+ }
336
+ prepare(view, e) {
337
+ this.view = view;
338
+ this.object = view;
339
+ this.android = e;
340
+ this.action = this.getActionType(e);
341
+ this._activePointers = undefined;
342
+ this._allPointers = undefined;
343
+ }
344
+ getPointerCount() {
345
+ return this.android.getPointerCount();
346
+ }
347
+ getActivePointers() {
348
+ // Only one active pointer in Android
349
+ if (!this._activePointers) {
350
+ this._activePointers = [new Pointer(this.android.getActionIndex(), this.android)];
351
+ }
352
+ return this._activePointers;
353
+ }
354
+ getAllPointers() {
355
+ if (!this._allPointers) {
356
+ this._allPointers = [];
357
+ for (let i = 0; i < this.getPointerCount(); i++) {
358
+ this._allPointers.push(new Pointer(i, this.android));
359
+ }
360
+ }
361
+ return this._allPointers;
362
+ }
363
+ getX() {
364
+ return this.getActivePointers()[0].getX();
365
+ }
366
+ getY() {
367
+ return this.getActivePointers()[0].getY();
368
+ }
369
+ getActionType(e) {
370
+ switch (e.getActionMasked()) {
371
+ case android.view.MotionEvent.ACTION_DOWN:
372
+ case android.view.MotionEvent.ACTION_POINTER_DOWN:
373
+ return TouchAction.down;
374
+ case android.view.MotionEvent.ACTION_MOVE:
375
+ return TouchAction.move;
376
+ case android.view.MotionEvent.ACTION_UP:
377
+ case android.view.MotionEvent.ACTION_POINTER_UP:
378
+ return TouchAction.up;
379
+ case android.view.MotionEvent.ACTION_CANCEL:
380
+ return TouchAction.cancel;
381
+ }
382
+ return '';
383
+ }
384
+ }
385
+ function _getSwipeDirection(direction) {
386
+ return SwipeDirection[direction];
387
+ }
388
+ class SwipeGestureEventData extends CommonGestureEventData {
389
+ get direction() {
390
+ return _getSwipeDirection(this.extraData.direction);
391
+ }
392
+ }
393
+ class PanGestureEventData extends CommonGestureEventData {
394
+ get deltaX() {
395
+ return this.eventData.extraData.translationX;
396
+ }
397
+ get deltaY() {
398
+ return this.eventData.extraData.translationY;
399
+ }
400
+ }
401
+ class PinchGestureEventData extends CommonGestureEventData {
402
+ getFocusX() {
403
+ return this.eventData.extraData.focalX;
404
+ }
405
+ getFocusY() {
406
+ return this.eventData.extraData.focalY;
407
+ }
408
+ get scale() {
409
+ return this.eventData.extraData.scale;
410
+ }
411
+ }
412
+ function _executeCallback(observer, args) {
413
+ if (observer && observer.callback) {
414
+ observer.callback.call(observer._context, args);
415
+ }
416
+ }
417
+ //# sourceMappingURL=gestures_override.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gestures_override.js","sourceRoot":"../src/","sources":["gestures_override.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nativescript-community/gesturehandler",
3
- "version": "2.0.20",
3
+ "version": "2.0.22",
4
4
  "description": "Declarative API exposing platform native touch and gesture system to NativeScript.",
5
5
  "main": "gesturehandler",
6
6
  "sideEffects": false,
@@ -48,5 +48,5 @@
48
48
  "dependencies": {
49
49
  "@nativescript-community/observable": "^2.0.10"
50
50
  },
51
- "gitHead": "5fa1800f063610548a9681109babeba576f8aff8"
51
+ "gitHead": "cb1551f80a89024fd71b1dcc909d22eed9cb8dca"
52
52
  }
@@ -0,0 +1,3 @@
1
+ /// <reference path="./typings/android.d.ts" />
2
+ /// <reference path="./typings/extensions.android.d.ts" />
3
+ /// <reference path="./typings/ios.d.ts" />