fix(playback): shuffle button sometimes gets stuck and stops working #183

This commit is contained in:
Kingkor Roy Tirtho 2022-08-26 08:54:25 +06:00
parent cdcc0d314d
commit 4240433e3d

View File

@ -1,6 +1,5 @@
import 'dart:async'; import 'dart:async';
import 'dart:convert'; import 'dart:convert';
import 'dart:io';
import 'package:audio_service/audio_service.dart'; import 'package:audio_service/audio_service.dart';
import 'package:audioplayers/audioplayers.dart'; import 'package:audioplayers/audioplayers.dart';
@ -168,6 +167,7 @@ class Playback extends PersistedChangeNotifier {
Future<void> playPlaylist(CurrentPlaylist playlist, [int index = 0]) async { Future<void> playPlaylist(CurrentPlaylist playlist, [int index = 0]) async {
try { try {
if (index < 0 || index > playlist.tracks.length - 1) return; if (index < 0 || index > playlist.tracks.length - 1) return;
if (isPlaying || status == PlaybackStatus.playing) await stop();
this.playlist = playlist; this.playlist = playlist;
final played = this.playlist!.tracks[index]; final played = this.playlist!.tracks[index];
status = PlaybackStatus.loading; status = PlaybackStatus.loading;