mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-15 11:01:21 +08:00
iOS long press status property
This commit is contained in:
@ -380,6 +380,7 @@ function _getArgs(type: GestureTypes, view: View, e: android.view.MotionEvent):
|
||||
ios: undefined,
|
||||
object: view,
|
||||
eventName: toString(type),
|
||||
state:undefined,
|
||||
};
|
||||
}
|
||||
|
||||
|
7
tns-core-modules/ui/gestures/gestures.d.ts
vendored
7
tns-core-modules/ui/gestures/gestures.d.ts
vendored
@ -226,7 +226,12 @@ export interface PanGestureEventData extends GestureEventDataWithState {
|
||||
deltaX: number;
|
||||
deltaY: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides gesture event data for longPress gesture.
|
||||
*/
|
||||
export interface LongPressGestureEventData extends GestureEventDataWithState {
|
||||
state: number;
|
||||
}
|
||||
/**
|
||||
* Provides gesture event data for rotation gesture.
|
||||
*/
|
||||
|
@ -1,5 +1,5 @@
|
||||
// Definitions.
|
||||
import { GestureEventData, SwipeGestureEventData, PanGestureEventData, RotationGestureEventData, PinchGestureEventData } from ".";
|
||||
import { GestureEventData, SwipeGestureEventData, PanGestureEventData, LongPressGestureEventData, RotationGestureEventData, PinchGestureEventData } from ".";
|
||||
import { View, EventData } from "../core/view";
|
||||
|
||||
// Types.
|
||||
@ -167,7 +167,9 @@ export class GesturesObserver extends GesturesObserverBase {
|
||||
}
|
||||
|
||||
if (type & GestureTypes.longPress) {
|
||||
nativeView.addGestureRecognizer(this._createRecognizer(GestureTypes.longPress));
|
||||
nativeView.addGestureRecognizer(this._createRecognizer(GestureTypes.longPress, args => {
|
||||
this._executeCallback(_getLongPressData(args));
|
||||
}));
|
||||
}
|
||||
|
||||
if (type & GestureTypes.touch) {
|
||||
@ -344,6 +346,19 @@ function _getPanData(args: GestureEventData, view: UIView): PanGestureEventData
|
||||
};
|
||||
}
|
||||
|
||||
function _getLongPressData(args: GestureEventData): LongPressGestureEventData {
|
||||
const recognizer = <UILongPressGestureRecognizer>args.ios;
|
||||
return <LongPressGestureEventData>{
|
||||
type: args.type,
|
||||
view: args.view,
|
||||
ios: args.ios,
|
||||
android: undefined,
|
||||
object: args.view,
|
||||
eventName: toString(args.type),
|
||||
state: recognizer.state,
|
||||
};
|
||||
}
|
||||
|
||||
function _getRotationData(args: GestureEventData): RotationGestureEventData {
|
||||
const recognizer = <UIRotationGestureRecognizer>args.ios;
|
||||
|
||||
|
Reference in New Issue
Block a user