Start player in pause mode if windows is reloaded/refreshed. Fixes #457

This commit is contained in:
Deluan 2020-09-24 09:37:28 -04:00
parent 2230a9052f
commit a1c670b40d
2 changed files with 22 additions and 4 deletions

View File

@ -44,7 +44,7 @@ const Player = () => {
autoPlay: true,
preload: true,
autoPlayInitLoadPlayList: true,
// loadAudioErrorPlayNext: false,
loadAudioErrorPlayNext: false,
clearPriorAudioLists: false,
showDestroy: false,
showDownload: false,
@ -94,6 +94,7 @@ const Player = () => {
return {
...defaultOptions,
clearPriorAudioLists: queue.clear,
playIndex: queue.playIndex,
audioLists: queue.queue.map((item) => item),
defaultVolume: queue.volume,
}

View File

@ -117,7 +117,13 @@ const setVolume = (volume) => ({
data: { volume },
})
const initialState = { queue: [], clear: true, current: {}, volume: 1 }
const initialState = {
queue: [],
clear: true,
current: {},
volume: 1,
playIndex: 0,
}
const playQueueReducer = (previousState = initialState, payload) => {
let queue, current
@ -129,6 +135,7 @@ const playQueueReducer = (previousState = initialState, payload) => {
case PLAYER_SET_VOLUME:
return {
...previousState,
playIndex: undefined,
volume: data.volume,
}
case PLAYER_CURRENT:
@ -143,6 +150,7 @@ const playQueueReducer = (previousState = initialState, payload) => {
return {
...previousState,
current,
playIndex: undefined,
volume: data.volume,
}
case PLAYER_ADD_TRACKS:
@ -150,7 +158,7 @@ const playQueueReducer = (previousState = initialState, payload) => {
Object.keys(data).forEach((id) => {
queue.push(mapToAudioLists(data[id]))
})
return { ...previousState, queue, clear: false }
return { ...previousState, queue, clear: false, playIndex: undefined }
case PLAYER_PLAY_NEXT:
current = get(previousState.current, 'uuid', '')
newQueue = []
@ -169,12 +177,18 @@ const playQueueReducer = (previousState = initialState, payload) => {
newQueue.push(mapToAudioLists(data[id]))
})
}
return { ...previousState, queue: newQueue, clear: true }
return {
...previousState,
queue: newQueue,
clear: true,
playIndex: undefined,
}
case PLAYER_SET_TRACK:
return {
...previousState,
queue: [mapToAudioLists(data)],
clear: true,
playIndex: 0,
}
case PLAYER_SYNC_QUEUE:
current = data.length > 0 ? previousState.current : {}
@ -182,6 +196,7 @@ const playQueueReducer = (previousState = initialState, payload) => {
...previousState,
queue: data,
clear: false,
playIndex: undefined,
current,
}
case PLAYER_SCROBBLE:
@ -195,6 +210,7 @@ const playQueueReducer = (previousState = initialState, payload) => {
return {
...previousState,
queue: newQueue,
playIndex: undefined,
clear: false,
}
case PLAYER_PLAY_TRACKS:
@ -211,6 +227,7 @@ const playQueueReducer = (previousState = initialState, payload) => {
return {
...previousState,
queue,
playIndex: 0,
clear: true,
}
default: