Skip to content

[Feature]: Highlight currently-playing playlist in the sidebar #433

Description

@tsibog

Problem or Motivation

When a track is playing from a playlist, there's no indication in the sidebar of which playlist is currently playing. The user has to check the player bar to see the track name, then mentally map that back to a playlist. In Apple Music, the currently-playing playlist gets a small "now playing" indicator (equalizer animation or accent highlight) next to its name in the sidebar.

This is especially useful when browsing between playlists, queueing up the next one, or confirming which playlist a shuffle is pulling from.

Proposed Solution

Show a now-playing indicator on the sidebar row of the playlist that the current track was played from. This could be:

  • A small NowPlayingIndicator (equalizer animation) next to the playlist name, matching the style already used in PlaylistDetailView track rows (line 765)
  • An accent color highlight on the playlist row
  • Both

The indicator should appear only when the current track's source playlist matches a sidebar playlist, and disappear when playback stops or the source changes.

Alternatives Considered

  • Highlight only on hover: not discoverable enough
  • Badge count: not relevant to "now playing"

Feature Area

Library / Playlists (also touches UI / Visual)

Priority

Would improve my experience

Mockups or Examples

Apple Music shows an equalizer animation next to the currently-playing playlist/album in the sidebar. Spotify highlights the playing playlist with a green accent.

Additional Context

The NowPlayingIndicator component already exists in the codebase (PlaylistDetailView.swift line 765: NowPlayingIndicator(isPlaying: self.playerService.isPlaying, size: 14)). The sidebar renders playlists via Sidebar.swift (pinned items section, sidebarPinnedRow). The missing piece is linking playerService.currentTrack's source playlist to the sidebar row.

PlayerService would need to track which playlist the current track was played from (it may already have this via the queue context), and Sidebar.swift's sidebarPinnedRow would need to check that and show the indicator.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions