startListening method
Implementation
Future<void> startListening(Listener listener) async {
var subscription = _eventChannel.receiveBroadcastStream(nextListenerId++).listen(//listener
(dynamic msg) {
var list = List<int>.from(msg);
var keyEvent = KeyEvent(list);
if (keyEvent.isKeyDown) {
if (!state.state.contains(keyEvent.vkCode)) {
state.state.add(keyEvent.vkCode);
}
} else {
if (state.state.contains(keyEvent.vkCode)) {
state.state.remove(keyEvent.vkCode);
}
}
listener(keyEvent);
}, cancelOnError: true);
debugPrint('keyboard_event/event startListening');
_cancelListening = () {
subscription.cancel();
debugPrint('keyboard_event/event canceled');
};
}