DragProbe<TKey> class
The session's resolution core: the ONE owner of grab geometry and the
ONE site that turns a PointerSample into a TreeDropTarget. Both
the per-event pipeline (DragSession.resolve) and endDrag's commit
re-resolution go through resolveTarget, so the committed slot is
always the slot the feedback showed.
Constructors
-
DragProbe({required ReorderRenderPort<
TKey> renderPort, required DropZoneResolver<TKey> resolver, required TKey draggedKey, required int depthForPointerX(double sliverLocalX)?})
Properties
- grabDy → double
-
Drag-proxy grab geometry, captured once by captureGrab: the
pointer's offset within the dragged row (so the floating preview
doesn't jump to the pointer) and the row's extent (to size the
preview). Read by the public
dragProxyGeometrygetter and the settler's release-anchor math.no setter - grabRowExtent → double
-
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- probeDy → double
-
Touch-first probe offset: shifts slot resolution from the raw
pointer to the PROXY MIDPOINT,
grabRowExtent / 2 - grabDy. On touch there is no visible cursor, so the card in hand is the only thing the user can steer by and selection has to track it. Non-zero only when the caller enables the midpoint probe (make-room plus release-settle, where the anchor IS the visible floating card) and the grab capture succeeded. A session constant, so the whole resolution pipeline simply probes atpointer + probeDy.no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
captureGrab(
{required PointerSample start, required bool midpointProbe}) → void - Captures grab geometry once at session start against the start sample.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
resolveTarget(
{required PointerSample? sample, required TreeDropTarget< TKey> ? previous}) → TreeDropTarget<TKey> ? - Finds the live row under the probe via ReorderRenderPort.findRowAtPaintedY and hands classification to the DropZoneResolver. Pending-deletion rows are vanishing and cannot be valid drop targets; the lookup skips them.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited