From cea1c147572f46a9aa98a74a328d3997dd0c9530 Mon Sep 17 00:00:00 2001 From: Agate Date: Tue, 18 Aug 2020 18:03:34 +0200 Subject: [PATCH] Fix #1190: improved shuffle behaviour --- changes/changelog.d/1190.enhancement | 1 + front/src/store/queue.js | 9 ++++----- 2 files changed, 5 insertions(+), 5 deletions(-) create mode 100644 changes/changelog.d/1190.enhancement diff --git a/changes/changelog.d/1190.enhancement b/changes/changelog.d/1190.enhancement new file mode 100644 index 000000000..b64dc9d92 --- /dev/null +++ b/changes/changelog.d/1190.enhancement @@ -0,0 +1 @@ +Improved shuffle behaviour (#1190) \ No newline at end of file diff --git a/front/src/store/queue.js b/front/src/store/queue.js index a5ab856a4..5acff3efb 100644 --- a/front/src/store/queue.js +++ b/front/src/store/queue.js @@ -158,16 +158,15 @@ export default { // so we replay automatically on next track append commit('ended', true) }, - shuffle ({dispatch, commit, state}, callback) { - let toKeep = state.tracks.slice(0, state.currentIndex + 1) - let toShuffle = state.tracks.slice(state.currentIndex + 1) - let shuffled = toKeep.concat(_.shuffle(toShuffle)) + async shuffle ({dispatch, commit, state}, callback) { + let shuffled = _.shuffle(state.tracks) commit('tracks', []) let params = {tracks: shuffled} if (callback) { params.callback = callback } - dispatch('appendMany', params) + await dispatch('appendMany', params) + await dispatch('currentIndex', 0) } } }