Merge pull request #28 from GuardKenzie/repeat-state-fix

Repeat state not updating
This commit is contained in:
Erica
2022-10-04 20:47:28 +00:00
committed by GitHub

View File

@ -227,15 +227,6 @@ class Player:
self.last_song = None self.last_song = None
# Set repeat flag
current_status = self.client.status()
if "repeat" in current_status.keys():
self.repeat = current_status["repeat"]
else:
self.repeat = 0
# Album art only flag # Album art only flag
self.album_art_only = player_config.getboolean("album_art_only", False) self.album_art_only = player_config.getboolean("album_art_only", False)
@ -752,9 +743,19 @@ class Player:
self.update_needed = True self.update_needed = True
elif action == "repeat": elif action == "repeat":
self.repeat = int(not self.repeat) # Find repeat state
self.client.repeat(self.repeat) repeat = None
self.update_needed = True for key, value in self.client.status().items():
if key == "repeat":
try:
repeat = int(value)
except ValueError:
break
# Update repeat state if it exists
if repeat is not None:
self.client.repeat(int(not repeat))
self.update_needed = True
elif action == "shuffle": elif action == "shuffle":
self.client.shuffle() self.client.shuffle()
@ -816,7 +817,17 @@ class Player:
) )
# Repeat string # Repeat string
if self.repeat: repeat_state = None
for key, state in self.client.status().items():
# Check if we got repeat
if key == "repeat":
try:
# Cast repeat state to int
repeat_state = int(state)
except ValueError:
break
if repeat_state:
repeat_string = "r" repeat_string = "r"
self.art_win.addstr( self.art_win.addstr(
self.text_start + 3, 0, self.text_start + 3, 0,