listen method
Implementation
@override
Stream<dynamic> listen({String? key}) async* {
await for (final event in _keyListener.stream) {
if (key != null) {
if (event == key) {
yield key;
}
} else {
yield event;
}
}
}