Skip to content

Add system media controls and Commodore-branded menu bar icon#3

Open
eeksock wants to merge 1 commit into
serkantanriverdi:mainfrom
eeksock:add-system-media-controls
Open

Add system media controls and Commodore-branded menu bar icon#3
eeksock wants to merge 1 commit into
serkantanriverdi:mainfrom
eeksock:add-system-media-controls

Conversation

@eeksock

@eeksock eeksock commented Jul 19, 2026

Copy link
Copy Markdown

SID Jukebox had no integration with macOS's media control surfaces - Control Center's Now Playing widget, the lock screen, and hardware/keyboard media keys all had no effect on playback.

This wires up MPNowPlayingInfoCenter and MPRemoteCommandCenter: publishes the current track's title, artist, duration and elapsed time, and routes play/pause/next/previous/stop/seek commands to the existing transport methods.

Also replaces the generic music-note menu bar icon with the classic Commodore "C=" badge, rendered as a proper template image (1x/2x) so it re-tints correctly for light/dark menu bars and the highlighted state, matching every other status item. I think it looks great, personally, but feel free to ignore if you prefer the built-in character. :-)

SID Jukebox had no integration with macOS's media control surfaces -
Control Center's Now Playing widget, the lock screen, and hardware/
keyboard media keys all had no effect on playback.

Wire up MPNowPlayingInfoCenter and MPRemoteCommandCenter: publish the
current track's title, artist, duration and elapsed time, and route
play/pause/next/previous/stop/seek commands to the existing transport
methods. Now Playing info is kept published (title-only, rate 0) even
when idle rather than cleared to nil, since a nil entry drops SID
Jukebox from macOS's Now Playing arbitration entirely and causes
media keys to fall back to launching Apple Music instead.

Also replace the generic music-note menu bar icon with the classic
Commodore "C=" badge, rendered as a proper template image (1x/2x) so
it re-tints correctly for light/dark menu bars and the highlighted
state, matching every other status item.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant