LongPressGestureRecognizer class

Recognizes when the user has pressed down at the same location for a long period of time.

The gesture must not deviate in position from its touch down point for 500ms until it's recognized. Once the gesture is accepted, the finger can be moved, triggering onLongPressMoveUpdate callbacks, unless the postAcceptSlopTolerance constructor argument is specified.

LongPressGestureRecognizer may compete on pointer events of kPrimaryButton, kSecondaryButton, and/or kTertiaryButton if at least one corresponding callback is non-null. If it has no callbacks, it is a no-op.

Inheritance

Constructors

LongPressGestureRecognizer({Duration? duration, double? postAcceptSlopTolerance = null, Set<PointerDeviceKind>? supportedDevices, Object? debugOwner, AllowedButtonsFilter? allowedButtonsFilter})
Creates a long-press gesture recognizer.

Properties

allowedButtonsFilter AllowedButtonsFilter
Called when interaction starts. This limits the dragging behavior for custom clicks (such as scroll click). Its parameter comes from PointerEvent.buttons.
finalinherited
deadline Duration?
If non-null, the recognizer will call didExceedDeadline after this amount of time has elapsed since starting to track the primary pointer.
finalinherited
debugDescription String
Returns a very short pretty description of the gesture that the recognizer looks for, like 'tap' or 'horizontal drag'.
no setteroverride
debugOwner Object?
The recognizer's owner.
finalinherited
gestureSettings DeviceGestureSettings?
Optional device specific configuration for device gestures that will take precedence over framework defaults.
getter/setter pairinherited
hashCode int
The hash code for this object.
no setterinherited
initialPosition OffsetPair?
The location at which the primary pointer contacted the screen.
no setterinherited
onLongPress GestureLongPressCallback?
Called when a long press gesture by a primary button has been recognized.
getter/setter pair
onLongPressCancel GestureLongPressCancelCallback?
Called when a pointer that previously triggered onLongPressDown will not end up causing a long-press.
getter/setter pair
onLongPressDown GestureLongPressDownCallback?
Called when a pointer has contacted the screen at a particular location with a primary button, which might be the start of a long-press.
getter/setter pair
onLongPressEnd GestureLongPressEndCallback?
Called when the pointer stops contacting the screen after a long-press by a primary button.
getter/setter pair
onLongPressMoveUpdate GestureLongPressMoveUpdateCallback?
Called when moving after the long press by a primary button is recognized.
getter/setter pair
onLongPressStart GestureLongPressStartCallback?
Called when a long press gesture by a primary button has been recognized.
getter/setter pair
onLongPressUp GestureLongPressUpCallback?
Called when the pointer stops contacting the screen after a long-press by a primary button.
getter/setter pair
onSecondaryLongPress GestureLongPressCallback?
Called when a long press gesture by a secondary button has been recognized.
getter/setter pair
onSecondaryLongPressCancel GestureLongPressCancelCallback?
Called when a pointer that previously triggered onSecondaryLongPressDown will not end up causing a long-press.
getter/setter pair
onSecondaryLongPressDown GestureLongPressDownCallback?
Called when a pointer has contacted the screen at a particular location with a secondary button, which might be the start of a long-press.
getter/setter pair
onSecondaryLongPressEnd GestureLongPressEndCallback?
Called when the pointer stops contacting the screen after a long-press by a secondary button.
getter/setter pair
onSecondaryLongPressMoveUpdate GestureLongPressMoveUpdateCallback?
Called when moving after the long press by a secondary button is recognized.
getter/setter pair
onSecondaryLongPressStart GestureLongPressStartCallback?
Called when a long press gesture by a secondary button has been recognized.
getter/setter pair
onSecondaryLongPressUp GestureLongPressUpCallback?
Called when the pointer stops contacting the screen after a long-press by a secondary button.
getter/setter pair
onTertiaryLongPress GestureLongPressCallback?
Called when a long press gesture by a tertiary button has been recognized.
getter/setter pair
onTertiaryLongPressCancel GestureLongPressCancelCallback?
Called when a pointer that previously triggered onTertiaryLongPressDown will not end up causing a long-press.
getter/setter pair
onTertiaryLongPressDown GestureLongPressDownCallback?
Called when a pointer has contacted the screen at a particular location with a tertiary button, which might be the start of a long-press.
getter/setter pair
onTertiaryLongPressEnd GestureLongPressEndCallback?
Called when the pointer stops contacting the screen after a long-press by a tertiary button.
getter/setter pair
onTertiaryLongPressMoveUpdate GestureLongPressMoveUpdateCallback?
Called when moving after the long press by a tertiary button is recognized.
getter/setter pair
onTertiaryLongPressStart GestureLongPressStartCallback?
Called when a long press gesture by a tertiary button has been recognized.
getter/setter pair
onTertiaryLongPressUp GestureLongPressUpCallback?
Called when the pointer stops contacting the screen after a long-press by a tertiary button.
getter/setter pair
postAcceptSlopTolerance double?
The maximum distance in logical pixels the gesture is allowed to drift after the gesture has been accepted.
finalinherited
preAcceptSlopTolerance double?
The maximum distance in logical pixels the gesture is allowed to drift from the initial touch down position before the gesture is accepted.
finalinherited
primaryPointer int?
The ID of the primary pointer this recognizer is tracking.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
state GestureRecognizerState
The current state of the recognizer.
no setterinherited
supportedDevices Set<PointerDeviceKind>?
The kind of devices that are allowed to be recognized as provided by supportedDevices in the constructor, or the currently deprecated kind. These cannot both be set. If both are null, events from all device kinds will be tracked and recognized.
getter/setter pairinherited
team GestureArenaTeam?
The team that this recognizer belongs to, if any.
getter/setter pairinherited

Methods

acceptGesture(int pointer) → void
Called when this member wins the arena for the given pointer id.
override
addAllowedPointer(PointerDownEvent event) → void
Registers a new pointer that's been checked to be allowed by this gesture recognizer.
inherited
addAllowedPointerPanZoom(PointerPanZoomStartEvent event) → void
Registers a new pointer pan/zoom that's been checked to be allowed by this gesture recognizer.
inherited
addPointer(PointerDownEvent event) → void
Registers a new pointer that might be relevant to this gesture detector.
inherited
addPointerPanZoom(PointerPanZoomStartEvent event) → void
Registers a new pointer pan/zoom that might be relevant to this gesture detector.
inherited
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
didExceedDeadline() → void
Override to be notified when deadline is exceeded.
override
didExceedDeadlineWithEvent(PointerDownEvent event) → void
Same as didExceedDeadline but receives the event that initiated the gesture.
inherited
didStopTrackingLastPointer(int pointer) → void
Called when the number of pointers this recognizer is tracking changes from one to zero.
inherited
dispose() → void
Releases any resources used by the object.
inherited
getKindForPointer(int pointer) PointerDeviceKind
For a given pointer ID, returns the device kind associated with it.
inherited
handleEvent(PointerEvent event) → void
Called when a pointer event is routed to this recognizer.
inherited
handleNonAllowedPointer(PointerDownEvent event) → void
Handles a pointer being added that's not allowed by this recognizer.
inherited
handleNonAllowedPointerPanZoom(PointerPanZoomStartEvent event) → void
Handles a pointer pan/zoom being added that's not allowed by this recognizer.
inherited
handlePrimaryPointer(PointerEvent event) → void
Override to provide behavior for the primary pointer when the gesture is still possible.
override
invokeCallback<T>(String name, RecognizerCallback<T> callback, {String debugReport()?}) → T?
Invoke a callback provided by the application, catching and logging any exceptions.
inherited
isPointerAllowed(PointerDownEvent event) bool
Checks whether or not a pointer is allowed to be tracked by this recognizer.
override
isPointerPanZoomAllowed(PointerPanZoomStartEvent event) bool
Checks whether or not a pointer pan/zoom is allowed to be tracked by this recognizer.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
rejectGesture(int pointer) → void
Called when this member loses the arena for the given pointer id.
inherited
resolve(GestureDisposition disposition) → void
Resolves this recognizer's participation in each gesture arena with the given disposition.
override
resolvePointer(int pointer, GestureDisposition disposition) → void
Resolves this recognizer's participation in the given gesture arena with the given disposition.
inherited
startTrackingPointer(int pointer, [Matrix4? transform]) → void
Causes events related to the given pointer ID to be routed to this recognizer.
inherited
stopTrackingIfPointerNoLongerDown(PointerEvent event) → void
Stops tracking the pointer associated with the given event if the event is a PointerUpEvent or a PointerCancelEvent event.
inherited
stopTrackingPointer(int pointer) → void
Stops events related to the given pointer ID from being routed to this recognizer.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A brief description of this object, usually just the runtimeType and the hashCode.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited