Improved icon changing of play/pause button.

This commit is contained in:
The Wobbler 2024-12-29 15:18:38 +01:00
parent 44854af42f
commit 29cc80feae
3 changed files with 24 additions and 4 deletions

View file

@ -22,6 +22,9 @@ class GUICommunication:
def on_track_start(self):
self.track_control.on_track_start()
def on_playstate_update(self):
self.track_control.on_playstate_update()
def on_settings_change(self, key, value):
self.settings.update_settings(key, value)

View file

@ -43,7 +43,6 @@ class TrackControl:
def stop(self):
if self.app.player.current_playlist.has_tracks():
self.app.player.stop()
self.track_control.toggle_play_button.setIcon(self.play_icon)
def next_track(self):
if self.app.player.current_playlist.has_tracks():
@ -90,13 +89,22 @@ class TrackControl:
def toggle_playing(self):
if self.app.player.playing and self.app.player.paused: # paused
self.app.player.unpause()
self.track_control.toggle_play_button.setIcon(self.pause_icon)
elif self.app.player.playing: # playing
self.app.player.pause()
self.track_control.toggle_play_button.setIcon(self.play_icon)
elif self.app.player.current_playlist.has_tracks(): # stopped but tracks in the current playlist
self.app.player.start_playing()
self.track_control.toggle_play_button.setIcon(self.pause_icon)
def on_playstate_update(self):
if self.app.player.playing:
if self.app.player.paused:
self.track_control.toggle_play_button.setIcon(self.play_icon)
else:
self.track_control.toggle_play_button.setIcon(self.pause_icon)
else:
self.track_control.toggle_play_button.setIcon(self.play_icon)