Skip to content

Commit

Permalink
changelog:
Browse files Browse the repository at this point in the history
changed play next song automatically icon
improved playlist load function
improved little bit play random song automatically feature
  • Loading branch information
gokadzev committed Jul 21, 2022
1 parent c3f0dd0 commit c276c68
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 33 deletions.
70 changes: 38 additions & 32 deletions lib/API/musify.dart
Original file line number Diff line number Diff line change
Expand Up @@ -158,46 +158,52 @@ Future<Map> getRandomSong() async {
as List;
}
final _random = new Random();
final playlistSongs = [];
await for (final song in yt.playlists
.getVideos(playlists[_random.nextInt(playlists.length)]['ytid'])
.take(5)) {
playlistSongs.add(
returnSongLayout(
0,
song.id.toString(),
formatSongTitle(
song.title.split('-')[song.title.split('-').length - 1],
final playlistId = playlists[_random.nextInt(playlists.length)]['ytid'];
final playlistSongs =
await getData('cache', 'playlistSongs' + playlistId) ?? [];
if (playlistSongs.isEmpty) {
await for (final song in yt.playlists.getVideos(playlistId).take(5)) {
playlistSongs.add(
returnSongLayout(
0,
song.id.toString(),
formatSongTitle(
song.title.split('-')[song.title.split('-').length - 1],
),
song.thumbnails.standardResUrl,
song.thumbnails.lowResUrl,
song.thumbnails.maxResUrl,
song.title.split('-')[0],
),
song.thumbnails.standardResUrl,
song.thumbnails.lowResUrl,
song.thumbnails.maxResUrl,
song.title.split('-')[0],
),
);
);
}
}

return playlistSongs[_random.nextInt(playlistSongs.length)];
}

Future getSongsFromPlaylist(dynamic playlistid) async {
final playlistSongs = [];
int index = 0;
await for (final song in yt.playlists.getVideos(playlistid)) {
playlistSongs.add(
returnSongLayout(
index,
song.id.toString(),
formatSongTitle(
song.title.split('-')[song.title.split('-').length - 1],
final List playlistSongs =
await getData('cache', 'playlistSongs' + playlistid) ?? [];
if (playlistSongs.isEmpty) {
int index = 0;
await for (final song in yt.playlists.getVideos(playlistid)) {
playlistSongs.add(
returnSongLayout(
index,
song.id.toString(),
formatSongTitle(
song.title.split('-')[song.title.split('-').length - 1],
),
song.thumbnails.standardResUrl,
song.thumbnails.lowResUrl,
song.thumbnails.maxResUrl,
song.title.split('-')[0],
),
song.thumbnails.standardResUrl,
song.thumbnails.lowResUrl,
song.thumbnails.maxResUrl,
song.title.split('-')[0],
),
);
index += 1;
);
index += 1;
}
addOrUpdateData('cache', 'playlistSongs' + playlistid, playlistSongs);
}

return playlistSongs;
Expand Down
4 changes: 4 additions & 0 deletions lib/services/data_manager.dart
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,10 @@ void deleteData(String category, dynamic key) {
}

void clearCache() {
if (!Hive.isBoxOpen("cache")) {
Hive.openBox("cache");
}
Hive.box("cache").clear();
DefaultCacheManager().emptyCache();
}

Expand Down
2 changes: 1 addition & 1 deletion lib/ui/player.dart
Original file line number Diff line number Diff line change
Expand Up @@ -354,7 +354,7 @@ class AudioAppState extends State<AudioApp> {
return IconButton(
padding: EdgeInsets.zero,
icon: Icon(
MdiIcons.skipNext,
MdiIcons.chevronRight,
color: value ? accent : Colors.white,
),
iconSize: size.width * 0.056,
Expand Down

0 comments on commit c276c68

Please sign in to comment.