DragGestureRecognizer class abstract
Recognizes movement.
In contrast to MultiDragGestureRecognizer, DragGestureRecognizer recognizes a single gesture sequence for all the pointers it watches, which means that the recognizer has at most one drag sequence active at any given time regardless of how many pointers are in contact with the screen.
DragGestureRecognizer is not intended to be used directly. Instead, consider using one of its subclasses to recognize specific types for drag gestures.
DragGestureRecognizer competes on pointer events only when it has at least one non-null callback. If it has no callbacks, it is a no-op.
See also:
- HorizontalDragGestureRecognizer, for left and right drags.
- VerticalDragGestureRecognizer, for up and down drags.
- PanGestureRecognizer, for drags that are not locked to a single axis.
- Inheritance
-
- Object
- GestureArenaMember
- GestureRecognizer
- OneSequenceGestureRecognizer
- DragGestureRecognizer
- Implementers
Constructors
-
DragGestureRecognizer({Object? debugOwner, DragStartBehavior dragStartBehavior = DragStartBehavior.start, MultitouchDragStrategy multitouchDragStrategy = MultitouchDragStrategy.latestPointer, GestureVelocityTrackerBuilder velocityTrackerBuilder = _defaultBuilder, bool onlyAcceptDragOnThreshold = false, Set<
PointerDeviceKind> ? supportedDevices, AllowedButtonsFilter allowedButtonsFilter = _defaultButtonAcceptBehavior}) - Initialize the object.
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
- debugDescription → String
-
Returns a very short pretty description of the gesture that the
recognizer looks for, like 'tap' or 'horizontal drag'.
no setterinherited
- debugLastPendingEventTimestamp → Duration?
-
When asserts are enabled, returns the last tracked pending event timestamp
for this recognizer.
no setter
- debugOwner → Object?
-
The recognizer's owner.
finalinherited
- dragStartBehavior ↔ DragStartBehavior
-
Configure the behavior of offsets passed to onStart.
getter/setter pair
- 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
- maxFlingVelocity ↔ double?
-
Fling velocity magnitudes will be clamped to this value.
getter/setter pair
- minFlingDistance ↔ double?
-
The minimum distance an input pointer drag must have moved
to be considered a fling gesture.
getter/setter pair
- minFlingVelocity ↔ double?
-
The minimum velocity for an input pointer drag to be considered fling.
getter/setter pair
- multitouchDragStrategy ↔ MultitouchDragStrategy
-
Configure the multi-finger drag strategy on multi-touch devices.
getter/setter pair
- onCancel ↔ GestureDragCancelCallback?
-
The pointer that previously triggered onDown did not complete.
getter/setter pair
- onDown ↔ GestureDragDownCallback?
-
A pointer has contacted the screen with a primary button and might begin
to move.
getter/setter pair
- onEnd ↔ GestureDragEndCallback?
-
A pointer that was previously in contact with the screen with a primary
button and moving is no longer in contact with the screen and was moving
at a specific velocity when it stopped contacting the screen.
getter/setter pair
- onlyAcceptDragOnThreshold ↔ bool
-
Whether the drag threshold should be met before dispatching any drag callbacks.
getter/setter pair
- onStart ↔ GestureDragStartCallback?
-
A pointer has contacted the screen with a primary button and has begun to
move.
getter/setter pair
- onUpdate ↔ GestureDragUpdateCallback?
-
A pointer that is in contact with the screen with a primary button and
moving has moved again.
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
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 deprecatedkind
. 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
- velocityTrackerBuilder ↔ GestureVelocityTrackerBuilder
-
Determines the type of velocity estimation method to use for a potential
drag gesture, when a new pointer is added.
getter/setter pair
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.
override
-
addAllowedPointerPanZoom(
PointerPanZoomStartEvent event) → void -
Registers a new pointer pan/zoom that's been checked to be allowed by this
gesture recognizer.
override
-
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.
override
-
didStopTrackingLastPointer(
int pointer) → void -
Called when the number of pointers this recognizer is tracking changes from one to zero.
override
-
dispose(
) → void -
Releases any resources used by the object.
override
-
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.
override
-
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
-
invokeCallback<
T> (String name, RecognizerCallback< T> callback, {String debugReport()?}) → T? -
Invoke a callback provided by the application, catching and logging any
exceptions.
inherited
-
isFlingGesture(
VelocityEstimate estimate, PointerDeviceKind kind) → bool - Determines if a gesture is a fling or not based on velocity.
-
isPointerAllowed(
PointerEvent 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.
override
-
resolve(
GestureDisposition disposition) → void -
Resolves this recognizer's participation in each gesture arena with the
given disposition.
inherited
-
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