feat: add keyboard media controls

This commit is contained in:
poka 2023-04-16 03:30:01 +02:00
parent d7cb5885f7
commit 7f06a7b96e
1 changed files with 27 additions and 5 deletions

View File

@ -30,12 +30,34 @@ class _HomeScreenState extends State<HomeScreen> {
autofocus: true, autofocus: true,
focusNode: FocusNode(), focusNode: FocusNode(),
onKey: (RawKeyEvent event) { onKey: (RawKeyEvent event) {
if (event.runtimeType == RawKeyDownEvent && log.d(event.data.logicalKey.keyId);
event.data.logicalKey.keyId == 32) //Enter Key ID from keyboard if (event.runtimeType == RawKeyDownEvent) //Enter Key ID from keyboard
{ {
hp.player.state.name == 'playing' switch (event.data.logicalKey.keyId) {
? hp.player.pause() case 32:
: hp.player.resume(); case 112:
case 4294969861:
hp.player.state.name == 'playing'
? hp.player.pause()
: hp.player.resume();
break;
case 110:
case 94489280688:
if (hp.currentTrack != null &&
hp.currentTrack!.number < hp.trackList.last.number) {
hp.currentTrack = hp.trackList.firstWhere(
(element) => element.number == hp.currentTrack!.number + 1);
hp.playTrack(hp.currentTrack!);
}
break;
case 98:
case 94489280689:
if (hp.currentTrack != null && hp.currentTrack!.number > 1) {
hp.currentTrack = hp.trackList.firstWhere(
(element) => element.number == hp.currentTrack!.number - 1);
hp.playTrack(hp.currentTrack!);
}
}
} }
}, },
child: Stack( child: Stack(