From 90cad535c470fffa5c34c48737e44c1641416f0d Mon Sep 17 00:00:00 2001 From: Florrie Date: Fri, 10 Jul 2020 11:28:34 -0300 Subject: basic working backend save/restore & socket server Backend save/restore code (living in serialized-backend.js) has been well tested and shouldn't need much change going forward. Now we get to begin working on the actual synchronized-over-socket-server commands! --- backend.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'backend.js') diff --git a/backend.js b/backend.js index 4142026..048a6c5 100644 --- a/backend.js +++ b/backend.js @@ -63,6 +63,7 @@ class QueuePlayer extends EventEmitter { this.queueGrouplike = {name: 'Queue', isTheQueue: true, items: []} this.pauseNextTrack = false this.queueEndMode = 'end' // end, loop, shuffle + this.playedTrackToEnd = false this.timeData = null @@ -353,7 +354,7 @@ class QueuePlayer extends EventEmitter { } - async play(item, startTime = 0) { + async play(item, startTime = 0, forceStartPaused = false) { if (this.player === null) { throw new Error('Attempted to play before a player was loaded') } @@ -403,7 +404,9 @@ class QueuePlayer extends EventEmitter { this.emit('playing', this.playingTrack, oldTrack, startTime, this) await this.player.kill() - if (this.playedTrackToEnd) { + if (forceStartPaused) { + this.player.setPause(true) + } else if (this.playedTrackToEnd) { this.player.setPause(this.pauseNextTrack) this.pauseNextTrack = false this.playedTrackToEnd = false -- cgit 1.3.0-6-gf8a5