Fix player closing when queue ends
This commit is contained in:
parent
ec31004952
commit
e259e3dd74
|
@ -0,0 +1 @@
|
||||||
|
Fix player closing when queue ends (#1931)
|
|
@ -94,7 +94,7 @@ const queue = computed<QueueTrack[]>(() => {
|
||||||
})
|
})
|
||||||
|
|
||||||
// Current Index
|
// Current Index
|
||||||
export const currentIndex = useClamp(useStorage('queue:index', 0), 0, () => tracks.value.length)
|
export const currentIndex = useClamp(useStorage('queue:index', 0), 0, () => tracks.value.length - 1)
|
||||||
export const currentTrack = computed(() => queue.value[currentIndex.value])
|
export const currentTrack = computed(() => queue.value[currentIndex.value])
|
||||||
|
|
||||||
// Use Queue
|
// Use Queue
|
||||||
|
@ -204,11 +204,15 @@ export const useQueue = createGlobalState(() => {
|
||||||
// Next track
|
// Next track
|
||||||
const hasNext = computed(() => looping.value === LoopingMode.LoopQueue || currentIndex.value !== tracks.value.length - 1)
|
const hasNext = computed(() => looping.value === LoopingMode.LoopQueue || currentIndex.value !== tracks.value.length - 1)
|
||||||
const playNext = async (force = false) => {
|
const playNext = async (force = false) => {
|
||||||
// Loop entire queue / change track to the next one
|
if (currentIndex.value === tracks.value.length - 1) {
|
||||||
if (looping.value === LoopingMode.LoopQueue && currentIndex.value === tracks.value.length - 1 && force !== true) {
|
// Loop entire queue / change track to the next one
|
||||||
// Loop track programmatically if it is the only track in the queue
|
if (looping.value === LoopingMode.LoopQueue && force !== true) {
|
||||||
if (tracks.value.length === 1) return playTrack(currentIndex.value, true)
|
// Loop track programmatically if it is the only track in the queue
|
||||||
return playTrack(0)
|
if (tracks.value.length === 1) return playTrack(currentIndex.value, true)
|
||||||
|
return playTrack(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
isPlaying.value = false
|
||||||
}
|
}
|
||||||
|
|
||||||
return playTrack(currentIndex.value + 1)
|
return playTrack(currentIndex.value + 1)
|
||||||
|
|
Loading…
Reference in New Issue