Fix #99 and #156: Play button now play tracks immediately instead of appending them to the queue

This commit is contained in:
Eliot Berriot 2018-05-06 23:50:09 +02:00
parent 60608c0390
commit c70dc9b778
No known key found for this signature in database
GPG Key ID: DD6965E2476E5C27
2 changed files with 6 additions and 5 deletions

View File

@ -0,0 +1 @@
Play button now play tracks immediately instead of appending them to the queue (#99, #156)

View File

@ -2,7 +2,7 @@
<div :class="['ui', {'tiny': discrete}, 'buttons']">
<button
:title="$t('Add to current queue')"
@click="add"
@click="addNext(true)"
:class="['ui', {loading: isLoading}, {'mini': discrete}, {disabled: !playable}, 'button']">
<i class="ui play icon"></i>
<template v-if="!discrete"><slot><i18next path="Play"/></slot></template>
@ -42,9 +42,7 @@ export default {
}
},
mounted () {
if (!this.discrete) {
jQuery(this.$el).find('.ui.dropdown').dropdown()
}
jQuery(this.$el).find('.ui.dropdown').dropdown()
},
computed: {
playable () {
@ -98,9 +96,11 @@ export default {
addNext (next) {
let self = this
this.triggerLoad()
let wasEmpty = this.$store.state.queue.tracks.length === 0
this.getPlayableTracks().then((tracks) => {
self.$store.dispatch('queue/appendMany', {tracks: tracks, index: self.$store.state.queue.currentIndex + 1})
if (next) {
let goNext = next && !wasEmpty
if (goNext) {
self.$store.dispatch('queue/next')
}
})