detach method

  1. @override
void detach()
override

Stops publishing and releases platform listeners.

Implementation

@override
void detach() {
  _events?.cancel();
  _events = null;
  _timer?.cancel();
  _timer = null;
  _hid.stop();
  final sink = _sink;
  if (sink != null) {
    for (final pad in [..._pads.values, ..._hidPads.values]) {
      sink.disconnectDevice(pad.device);
    }
  }
  _pads.clear();
  _hidPads.clear();
  _ignoredHid.clear();
  _sink = null;
}