handleEvent method

  1. @override
void handleEvent(
  1. PointerEvent event,
  2. covariant HitTestEntry<HitTestTarget> entry
)
override

Override this method to handle pointer events that hit this render object.

For RenderBox objects, the entry argument is a BoxHitTestEntry. From this object you can determine the PointerDownEvent's position in local coordinates. (This is useful because PointerEvent.position is in global coordinates.)

Implementations of this method should call debugHandleEvent as follows, so that they support debugPaintPointersEnabled:

class RenderFoo extends RenderBox {
  // ...

  @override
  void handleEvent(PointerEvent event, HitTestEntry entry) {
    assert(debugHandleEvent(event, entry));
    // ... handle the event ...
  }

  // ...
}

Implementation

@override
void handleEvent(PointerEvent event, HitTestEntry entry) {
  super.handleEvent(event, entry as BoxHitTestEntry);

  // Add pointer to gesture dispatcher.
  GestureDispatcher.instance.handlePointerEvent(event);

  if (event is PointerDownEvent) {
    // Set event path at begin stage and reset it at end stage on viewport render box.
    GestureDispatcher.instance.resetEventPath();
  }
}