LongPressGestureRecognizer constructor
- Duration? duration,
- double? postAcceptSlopTolerance = null,
- Set<
PointerDeviceKind> ? supportedDevices, - Object? debugOwner,
- AllowedButtonsFilter? allowedButtonsFilter,
Creates a long-press gesture recognizer.
Consider assigning the onLongPressStart callback after creating this object.
The postAcceptSlopTolerance argument can be used to specify a maximum allowed distance for the gesture to deviate from the starting point once the long press has triggered. If the gesture deviates past that point, subsequent callbacks (onLongPressMoveUpdate, onLongPressUp, onLongPressEnd) will stop. Defaults to null, which means the gesture can be moved without limit once the long press is accepted.
The duration
argument can be used to overwrite the default duration
after which the long press will be recognized.
The allowedButtonsFilter
argument only gives this recognizer the
ability to limit the buttons it accepts. It does not provide the
ability to recognize any buttons beyond the ones it already accepts:
kPrimaryButton, kSecondaryButton or kTertiaryButton. Therefore, a
combined value of kPrimaryButton & kSecondaryButton
would be ignored,
but kPrimaryButton | kSecondaryButton
would be allowed, as long as
only one of them is selected at a time.
It's possible to limit this recognizer to a specific set of PointerDeviceKinds by providing the optional supportedDevices argument. If supportedDevices is null, the recognizer will accept pointer events from all device kinds.
Implementation
LongPressGestureRecognizer({
Duration? duration,
super.postAcceptSlopTolerance = null,
super.supportedDevices,
super.debugOwner,
AllowedButtonsFilter? allowedButtonsFilter,
}) : super(
deadline: duration ?? kLongPressTimeout,
allowedButtonsFilter: allowedButtonsFilter ?? _defaultButtonAcceptBehavior,
);