Releases: santiagorod92/foo_ui_panels
Releases · santiagorod92/foo_ui_panels
Release list
v1.4.0
v1.3.0
1.3.0 (2026-10-01)
Features
- Peak meter panel: the skin's "Peakmeter" panels are now drawn natively — LED bars per channel on a -60..0 dB scale with a held-peak marker, in the skin's accent colour.
- Album Art panel: the skin's "Album Art" panels are now drawn natively — the now-playing cover, fitted without distortion. Like the peak meter, it no longer needs a Default UI element, so it works on macOS too.
- Tray icon ($settray): on Windows a notification-area icon — click to show/hide the player, right-click for play/pause, stop, previous/next, show/hide and exit — and minimising sends the player to the tray. On macOS the same menu opens from a menu-bar icon.
- GDI+-style outlines: $gp_set_pen and $gp_draw_rectangle, next to the existing brush fills.
- Playlist keyboard navigation: arrows, Page Up/Down and Home/End (Shift extends the selection, Ctrl moves only the focus), Enter plays, and typing a few letters jumps to a title or album artist. "Show now playing" scrolls to the track.
- Playlist drag and drop: drag selected tracks to reorder them (undoable), and drop files or folders from Explorer / Finder onto the playlist — anywhere else in the window they are added to the end of the active playlist.
- Lyrics: a timing correction per track on top of the global one, "Search online again" to replace wrong lyrics (even ones from tags or a sidecar file), and instrumental tracks from lrclib.net shown as such.
- macOS Preferences page (Display > Panels UI (reborn)): skins root folder, active skin, main script and accent colour, applied immediately.
- Full-resolution rendering on Retina displays (macOS).
- Skin colours for the native panels: color. and color.. in foo_ui_panels.ini (playlist, album browser, quick search, lyrics, seek bar, volume). Skins without them look as before.
Bug Fixes
- Skin buttons that run menu commands now pick the command by its full menu path (e.g. "Playback/Random") instead of the first command with the same name.
- The playlist updates when the playlist changes instead of redrawing every second, and no longer re-reads every track on each mouse move — large playlists stay responsive.
- The player window shows foobar2000's icon in the taskbar and Alt+Tab.
Other
- The engine's parsing logic (scripts, foo_ui_panels.ini, lyrics, menu actions) is covered by unit tests, run on every build.
v1.2.0
v1.1.0
v1.0.0
1.0.0 (2026-09-29)
Features
- first public release (9636221)
Documentation
- extractor emits per-panel scripts (71b69e2)
- main menu integration pattern and WM_INITMENUPOPUP TODO (cb29b0f)
- PanelHost and win_sdk.h conventions (b241e75)
- point to tools/extract_fooava.py (d3ad818)
- record local-iteration / push-at-end convention (e842bdc)
- record repo conventions in CLAUDE.md (b1b0757)
- SkinEngine interpreter architecture (2b4f41a)
- splitter engine and raw-Win32 layout decision (e333b69)
- wallpaper asset setup + backgroundd=1 to enable background (3db0fa3)
- Wine deploy/test path and keyboard-forwarding note (db77311)