Skip to content

Commit 22cbe97

Browse files
committed
feat: enhance audio playback controls with repeat mode functionality
1 parent 4b18c31 commit 22cbe97

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

lib/screens/now_playing_page.dart

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -408,7 +408,14 @@ class NowPlayingPage extends StatelessWidget {
408408
),
409409
iconSize: iconSize,
410410
onPressed: () {
411-
repeatNotifier.value = AudioServiceRepeatMode.all;
411+
final _isSingleSongPlaying =
412+
activePlaylist['list'].isEmpty;
413+
repeatNotifier.value = _isSingleSongPlaying
414+
? AudioServiceRepeatMode.one
415+
: AudioServiceRepeatMode.all;
416+
417+
if (repeatNotifier.value == AudioServiceRepeatMode.one)
418+
audioHandler.setRepeatMode(repeatNotifier.value);
412419
},
413420
);
414421
},

lib/services/audio_service.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -375,6 +375,7 @@ class MusifyAudioHandler extends BaseAudioHandler {
375375

376376
@override
377377
Future<void> setRepeatMode(AudioServiceRepeatMode repeatMode) async {
378+
// we use this only when we want to loop single song
378379
await audioPlayer.setLoopMode(
379380
repeatMode == AudioServiceRepeatMode.all ? LoopMode.one : LoopMode.off,
380381
);

0 commit comments

Comments
 (0)