Skip to content

Commit e787e0c

Browse files
Show song title and artist in love message
1 parent f27cac4 commit e787e0c

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
* Change default volume from 80% to 100%
55
* Require Last.fm to be configured and working to start
66
* Fix volume not persisting when track changes
7+
* Show song title and artist in love message
78

89
### 1.0.10: 2026-01-07
910

omnishuffle/main.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ def __init__(self, source_filter: Optional[List[str]] = None):
9797
self._playing_next = False # Guard against concurrent play_next calls
9898
self._current_position: float = 0.0 # Updated by player callback
9999
self._status_first_print = True # Reset on track change
100+
self._pause_status = False # Pause status updates while printing messages
100101

101102
# Set initial volume from config
102103
initial_volume = self.config.get("general", {}).get("volume", 100)
@@ -241,7 +242,7 @@ def _status_updater(self):
241242
while self.running:
242243
self.spinner_idx += 1
243244

244-
if self.current_track:
245+
if self.current_track and not self._pause_status:
245246
# Update position from player
246247
self._current_position = self.player.position
247248

@@ -553,6 +554,7 @@ def love_current(self):
553554
if not self.current_track:
554555
return
555556

557+
self._pause_status = True
556558
self._clear_status()
557559

558560
loved_on = []
@@ -568,16 +570,19 @@ def love_current(self):
568570

569571
if loved_on:
570572
services = ", ".join(loved_on)
571-
console.print(f"\n[red]♥ Loved on {services}[/red]")
573+
console.print(f"[red]♥ Loved {self.current_track.title} by {self.current_track.artist} on {services}[/red]")
572574
self.current_loved = True
573575
else:
574-
console.print("\n[yellow]Love failed[/yellow]")
576+
console.print("[yellow]Love failed[/yellow]")
577+
console.print()
578+
self._pause_status = False
575579

576580
def ban_current(self):
577581
"""Ban/dislike current track."""
578582
if not self.current_track:
579583
return
580584

585+
self._pause_status = True
581586
self._clear_status()
582587

583588
# Always save to local ban list
@@ -590,6 +595,7 @@ def ban_current(self):
590595

591596
console.print(f"[red]✗ Banned:[/red] {self.current_track.artist} - {self.current_track.title}")
592597
console.print()
598+
self._pause_status = False
593599
self.play_next()
594600

595601
def toggle_pause(self):

0 commit comments

Comments
 (0)