OptionalbackgroundOptionalborderOptionalborderOptionalcurrentOptionalfillOptionalfractionThe thumb's position along its track as a fraction [0, 1]. Comes from the scrollbar's thumb — a
virtual scrollbar maps scroll → thumb non-linearly (elastic), so only the scrollbar knows this.
The grip is literally a touch-sized rendering of the thumb.
OptionalkeyOptionalonDrag lifecycle signal, carrying the grip ELEMENT (source: 'touch') — same event shape as the
desktop thumb's (ScrollbarProps.onThumbDrag). A virtual scrollbar pins its elastic region while
dragging; a client anchors drag UI (e.g. a tooltip) to the element.
OptionalonCalled on a repeating tick while the grip is dragged past a travel end and held there — the same
contract as ScrollbarProps.onThumbEdgeHold (a virtual scrollbar extends its elastic region,
accelerating with hold time). Return false to stop the ticking (parked at the real end). Leave
unset for a linear scrollbar: its end is the end.
OptionalonCalled while dragging with the new position along the travel as a fraction [0, 1]. The scrollbar
maps it back through its (possibly virtual) thumb space to a scroll offset.
The orientation of the scrollbar.
OptionalrefRef for the TouchThumbHandle element
Optionalsize
Indicate that a touch handling is being used