A pointer that was previously in contact with the
screen and moving horizontally is no longer in contact
with the screen and was moving at a specific velocity
when it stopped contacting the screen.

Pan

A pointer has contacted the screen and might begin to move
horizontally or vertically. This callback causes a crash if
onHorizontalDragStart or onVerticalDragStart is set.

A pointer that is in contact with the screen and is moving
in the vertical or horizontal direction. This callback causes
a crash if onHorizontalDragUpdate or onVerticalDragUpdate
is set.

A pointer that was previously in contact with screen
is no longer in contact with the screen and is moving
at a specific velocity when it stopped contacting the screen.
This callback causes a crash if onHorizontalDragEnd or
onVerticalDragEnd is set.

Adding gesture detection to widgets

To listen to gestures from the widgets layer, use a
GestureDetector.