Restore server-side playlist on reconnect (v2)

This commit is contained in:
Etoh 2023-02-24 14:22:04 +00:00 committed by GitHub
parent 9b9707a978
commit 74177b0546
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1932,10 +1932,16 @@ class SyncplayPlaylist():
def playlistNeedsRestoring(self, files, username):
return self._client.sharedPlaylistIsEnabled() and self._playlist != None and files == [] and username == None and not self._playlistBufferIsFromOldRoom(self._client.userlist.currentUser.room)
def playlistNeedsRestoring(self, files, username):
return self._client.sharedPlaylistIsEnabled() and len(self._playlist) > 0 and not files and username == None and (self._previousPlaylistRoom == None or self._previousPlaylistRoom == self._client.userlist.currentUser.room)
def changePlaylist(self, files, username=None, resetIndex=False):
if self.playlistNeedsRestoring(files, username):
self._ui.showDebugMessage("Restoring playlist on reconnect...")
files = self._playlist.copy()
self._playlist = []
self._client._protocol.setPlaylist(files)
self._client._protocol.setPlaylistIndex(self._playlistIndex)
return
self.queuedIndexFilename = None
if self._playlist == files:
if self._playlistIndex != 0 and resetIndex: