ScrollDragController class

Scrolls a scroll view as the user drags their finger across the screen.

See also:

  • DragScrollActivity, which is the activity the scroll view performs while a drag is underway.
Implemented types

Constructors

ScrollDragController({required ScrollActivityDelegate delegate, required DragStartDetails details, VoidCallback? onDragCanceled, double? carriedVelocity, double? motionStartDistanceThreshold})
Creates an object that scrolls a scroll view as the user drags their finger across the screen.

Properties

carriedVelocity → double?
Velocity that was present from a previous ScrollActivity when this drag began.
final
delegate → ScrollActivityDelegate
The object that will actuate the scroll view as the user drags.
no setter
hashCode → int
The hash code for this object.
no setterinherited
lastDetails → dynamic
The most recently observed DragStartDetails, DragUpdateDetails, or DragEndDetails object.
no setter
motionStartDistanceThreshold → double?
Amount of pixels in either direction the drag has to move by to start scroll movement again after each time scrolling came to a stop.
final
onDragCanceled → VoidCallback?
Called when dispose is called.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

cancel() → void
The input from the pointer is no longer directed towards this receiver.
override
dispose() → void
Called by the delegate when it is no longer sending events to this object.
end(DragEndDetails details) → void
The pointer is no longer in contact with the screen.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
override
update(DragUpdateDetails details) → void
The pointer has moved.
override
updateDelegate(ScrollActivityDelegate value) → void
Updates the controller's link to the ScrollActivityDelegate.

Operators

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

Constants

momentumRetainStationaryDurationThreshold → const Duration
Maximum amount of time interval the drag can have consecutive stationary pointer update events before losing the momentum carried from a previous scroll activity.
momentumRetainVelocityThresholdFactor → const double
The minimum amount of velocity needed to apply the carriedVelocity at the end of a drag. Expressed as a factor. For example with a carriedVelocity of 2000, we will need a velocity of at least 1000 to apply the carriedVelocity as well. If the velocity does not meet the threshold, the carriedVelocity is lost. Decided by fair eyeballing with the scroll_overlay platform test.
motionStoppedDurationThreshold → const Duration
Maximum amount of time interval the drag can have consecutive stationary pointer update events before needing to break the motionStartDistanceThreshold to start motion again.