All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.15.5] - 2023-03-13
- Fixed "Exit to Tray" behavior on Windows/Linux (#430)
- Fixed an issue where the player would spam the server with requests when playing a song that requires transcoding (Subsonic)
[0.15.4] - 2023-02-28
- Some QOL improvements (#398) (Thanks @fishnxt)
- More consistent queue persistence behavior
Retain window size
setting to persist window size- Default window width/height options
- Added Top Songs list on the artist page for Jellyfin
- Removed hard-coded discord rich presence appId length limit (#404)
- Fixed Javascript application error when adding songs to the queue from double clicking on a non-title column
- Bump electron version from 13 -> 22 and other package upgrades (#397) (Thanks @kgnarner7)
[0.15.3] - 2022-07-14
- Added KDE Breeze dark theme (#354) (Thanks )
- Added "Is not favorite" album filter option (#357)
- Added Turkish translation (#347) (Thanks @yekeskin)
- Added Italian translation (#329) (Thanks @Arci57)
- Fixed mini player initial scroll position when when auto scrolling is enabled (#346) (Thanks @kgarner7)
- Fixed album/disc/track order when playing from the folder view on Jellyfin (#309)
- Fixed certain UI elements from being drag selectable (#350) (Thanks @GermanDarknes)
- Fixed application occasionally being invisible due to invalid persisted window settings (#278)
- Fixed spanish translation (#333) (Thanks @ami-sc)
- Fixed MPRIS Javascript error due to missing song id on Linux (#251)
[0.15.2] - 2022-06-02
- Added Italian translation (Thanks @Arci57)
- Added Gruvbox Dark/Light themes (Thanks @MarshDeer)
- If enabled, notifications are now displayed whenever starting playback instead of only on song change (#327) (Thanks @pztrn)
- Fixed Simplified Chinese translation typo (Thanks @zhullyb)
- Fixed German translation (Thanks @mattsches)
- Fixed MPRIS volume integration (Thanks @Gelaechter)
- macOS 12.3+ build fixes (Thanks @pztrn)
- Fixed MPRIS errors servers with song ids containing '-' (#318)
[0.15.1] - 2022-04-20
- Re-added volume percentage display on hover of the volume icon
- Fixed macOS global hotkeys not working (#241)
- Fixed incorrect name for artist list "genre" column header
[0.15.0] - 2022-04-13
- Added setting to save and resume the current queue between sessions (#130) (Thanks @kgarner7)
- Added a simple "play random" button to the player bar (#276)
- Added new seek/volume sliders (#272)
- Seeking/dragging is now more responsive
- Added improved discord rich presence (#286)
- Added download button on the playlist view (#266)
- (Jellyfin) Added "genre" column to the artist list
- Swapped the order of "Seek Forward/Backward" and "Next/Prev Track" buttons on the player bar
- Global volume is now calculated logarithmically (#275) (Thanks @gelaechter)
- "Auto playlist" is now named "Play Random" (#276)
- "Now playing" option is now available on the "Start page" setting
- Playing songs by double clicking on a list should now play in the proper order (#279)
- (Linux) Fixed MPRIS metadata not updating when player automatically increments (#263)
- Application fonts now loaded locally instead of from Google CDN (#284)
- Enabling "Default to Album List on Artist Page" no longer performs a double redirect when entering the artist page (#271)
- Stop button is no longer disabled when playback is stopped (#273)
- Various package updates (#288) (Thanks @kgarner7)
- Top control bar show no longer be accessible when not logged in (#267)
[0.14.0] - 2022-03-12
- Added zoom options via hotkeys (#252)
- Zoom in: CTRL + SHIFT + =
- Zoom out: CTRL + SHIFT + -
- Added PLAY context menu options to the Genre view (#239)
- Added STOP button to the main player controls (#252)
- Added "System Notifications" option to display native notifications when the song automatically changes (#245)
- Added arm64 build (#238)
- New languages
- Spanish (Thanks @ami-sc) (#250)
- Sinhala (Thanks @hirusha-adi) (#254)
- (Jellyfin) Fixed the order of returned songs when playing from the Folder view using the context menu (#240)
- (Linux) Reset MPRIS position to 0 when using "previous track" resets the song 0 (#249)
- Fixed JavaScript error when removing all songs from the queue using the context menu (#248)
- Fixed Ampache server support by adding .view to all Subsonic API endpoints (#253)
- (Windows) Removed the cover art display when hovering Sonixd on the taskbar (due to new sidebar position) (#242)
[0.13.1] - 2022-02-16
- Fixed startup crash on all OS if the default settings file is not present (#237)
[0.13.0] - 2022-02-16
- Added new searchbar and search UI (#227, #228)
- Added playback controls to the Sonixd tray menu (#225)
- Added playlist selections to the
Start Page
config option
-
Sidebar changes (#206)
- Allow resizing of the sidebar when expanded
- Allow a toggle of the playerbar's cover art to the sidebar when expanded
- Display playlist list on the sidebar under the navigation
- Allow configuration of the display of sidebar elements
-
Changed the
Artist
row on the playerbar to use a comma delimited list of the song's artists rather than the album artist (#218)
- Fixed the player volume not resetting to its default value when resetting a song while crossfading (#228)
- (Jellyfin) Fixed artist list not displaying user favorites
- (Jellyfin) Fixed
bitrate
column not properly by its numeric value (#220) - Fixed javascript exception when incrementing/decrementing the queue (#230)
- Fixed popups/tooltips not using the configured font
[0.12.1] - 2022-02-02
- Fixed translation syntax error causing application to crash when deleting playlists from the context menu (#216)
- Fixed Player behavior (#217)
- No longer scrobbles an additional time after the last song ends when repeat is off
- (Jellyfin) Properly handles scrobbling the player's pause/resume and time position
[0.12.0] - 2022-01-31
- Added support for language/translations (#146) (Thanks @gelaechter)
- German translation added (Thanks @gelaechter)
- Simplified Chinese translation added (Thanks @fangxx3863)
- (Windows) Added media keys with desktop overlay (#79) (Thanks @GermanDarknes)
- (Subsonic) Added support for
/getLyrics
to display the current song's lyrics in a popup (#151) - (Jellyfin) Added song list page
- Added config to choose the default Album/Song list sort on startup (#169)
- Added config to choose the application start page (#176) (Thanks @GermanDarknes)
- Added config for pagination for Album/Song list pages
- (Windows) Added option to set custom directory on installation (#184)
- Added config to set the default artist page to the album list (#199)
- Added info mode for the Now Playing page (#160)
- Added release notes popup
- Player behavior
Media Stop
now stops the track and resets it instead of clearing the queue (#200)Media Prev
now resets to the start of the song if pressed after 5 seconds (#207)Media Prev
now resets to the start of the song if repeat is off and is the first song of the queue (#207)Media Next
now does nothing if repeat is off and is the last song of the queue (#207)- Playing a single track in the queue without repeat no longer plays the track twice (#205)
- Scrobbling
- (Jellyfin) Scrobbling has been reverted to use the
/sessions/playing
endpoint to support the Playback Reporting plugin (#187) - Scrobbling occurs after 5 seconds has elapsed for the current track as to not instantly mark the song as played
- (Jellyfin) Scrobbling has been reverted to use the
- Pressing
CTRL + F
or the search button now focuses the text in the searchbar (#203) (Thanks @WeekendWarrior1) - Changed loading indicators for all pages
- OBS scrobble now outputs an image.txt file instead of the downloading the cover image (#136)
- Player Bar
- Album name now appears under the artist
- (Subsonic) 5-star rating is available
- Clicking on the cover art now displays a full-size image
- Clicking on the song name now redirects to the Now Playing queue
- (Jellyfin) Removed track limit for "Auto Playlist"
- (macOS) Fixed macOS exit behavior (#198) (Thanks @zackslash)
- (Linux) Fixed MPRIS
position
result (#162) - (Subsonic) Fixed artist page crashing the application if server does not support
/getArtistInfo2
(#170) - (Jellyfin) Fixed
View all songs
returning songs out of their album track order - (Jellyfin) Fixed the "Latest Albums" on the album artist page displaying no albums
- Fixed card overlay button color on click
- Fixed buttons on the Album page to work better with light mode
- Fixed unfavorite button on Album page
[0.11.0] - 2022-01-01
- Added external integrations
- Added Discord rich presence to display the currently playing song (#155)
- Added OBS (Open Broadcaster Software) scrobbling to send current track metadata to desktop or the Tuna plugin (#136)
- Added a
Native
option for Titlebar Style (#148) (Thanks @gelaechter) - (Jellyfin) Added toggle to allow transcoding for non-directplay compatible filetypes (#158)
- Additional MPRIS support
- Added metadata:
albumArtist
,discNumber
,trackNumber
,useCount
,genre
- Added events:
seek
,position
,volume
,repeat
,shuffle
- Added metadata:
- Overhauled the Artist page
- (Jellyfin) Split albums by album artist OR compilation
- (Jellyfin) Added artist genres
- (Subsonic) Added Top Songs section
- Moved related artists to the main page scrolling menu
- Added
View All Songs
button to view all songs by the artist - Added artist radio (mix) button
- Horizontal scrolling menu no longer displays scrollbar
- Changed button styling on Playlist/Album/Artist pages
- Changed page image styling to use the card on Playlist/Album/Artist pages
- Fixed various MPRIS features
- Synchronized the play/pause state between the player and MPRIS client when pausing from Sonixd (#152)
- Fixed the identity of Sonixd to use the app name instead of description (#163)
- Fixed various submenus opening in the right-click context menu when the option is disabled (#164)
- Fixed compatibility with older Subsonic API servers (now targets Subsonic v1.13.0) (#144)
- Fixed playback causing heavily increased CPU/Power usage #145)
[0.10.0] - 2021-12-15
- Added 2 new default themes
- City Lights
- One Dark
- Added additional album filters (#66)
- Genres (AND/OR)
- Artists (AND/OR)
- Years (FROM/TO)
- Added external column sort filters for multiple pages (#66)
- Added item counter to page titles
Play Count
column has been added to albums (only works for Navidrome)
- Config page has been fully refreshed to a new look
- Config popover on the action bar now includes all config tabs
- Tooltips
- Increased default tooltip delay from 250ms -> 500ms
- Increased tooltip delay on card overlay buttons to 1000ms
- Grid view
- Placeholder images for playlists, albums, and artists have been updated (inspired from Jellyfin Web UI)
- Card title/subtitle width decreased from 100% to default length
- Separate card info section from image/overlay buttons on hover
- Popovers (config, auto playlist, etc)
- Now have decreased opacity
- Enabling/disabling global media keys no longer requires app restart
- (Jellyfin) Fixed
Recently Played
andMost Played
filters on the Dashboard page (#114) - (Jellyfin) Fixed server scrobble (#126)
- No longer sends the
/playing
request on song start (prevents song being marked as played when it starts) - Fixed song play count increasing multiple times per play
- No longer sends the
- (Jellyfin) Fixed tracks without embedded art displaying placeholder (#128)
- (Jellyfin) Fixed song
Path
property not displaying data - (Subsonic) Fixed login check for Funkwhale servers (#135)
- Fixed persistent grid-view scroll position
- Fixed list-view columns
Visibility
column now properly displays data
- Selected media folder is now cleared from settings on disconnect (prevents errors when signing into a new server)
- Fixed adding/removing artist as favorite on the Artist page not updating
- Fixed search bar not properly handling Asian keyboard inputs
- List-view scroll position is now persistent for the following:
- Now Playing
- Playlist list
- Favorites (all)
- Album list
- Artist list
- Genre list
- Grid-view scroll position is now persistent for the following:
- Playlist list
- Favorites (album/artist)
- Album list
- Artist list
- (Jellyfin) Changed audio stream URL to force transcoding off (#108)
- (Jellyfin) Fixed the player not sending the "finish" condition when the song meets the scrobble condition (unresolved from 0.9.0) (#111)
- Added 2 new default themes
- Plex-like
- Spotify-like
- Added volume control improvements
- Volume value tooltip while hovering the slider
- Mouse scroll wheel controls volume while hovering the slider
- Clicking the volume icon will mute/unmute
- Overhauled all default themes
- Rounded buttons, inputs, etc.
- Changed grid card hover effects
- Removed hover scale
- Removed default background on overlay buttons
- Moved border to only the image instead of full card
- Album page
- Genre(s) are now listed on a line separate from the artists
- Album artist is now distinct from track artists
- Increased length of the genre/artist line from 70% -> 80%
- The genre/artist line is now scrollable using the mouse wheel
- (Jellyfin) List view
Artist
column now uses the album artist propertyTitle (Combined)
column now displays all track artists, comma-delimited instead of the album artistGenre
column now displays all genres, comma-delimited, left-aligned
- (Jellyfin) Fixed the player not sending the "finish" condition when the song meets the scrobble condition
- (Jellyfin) Fixed album lists not sorting by the
genre
column - (Jellyfin)(API) Fixed the A-Z(Artist) not sorting by Album Artist on the album list
- (Jellyfin)(API) Fixed auto playlist not respecting the selected music folder
- (Jellyfin)(API) Fixed the artist page not respecting the selected music folder
- Fixed default (OOBE) title column not display data (#104)
- (Jellyfin)(Linux) Fixed JS MPRIS error when switching tracks due to unrounded song duration
- (Linux) Fixed MPRIS artist, genre, and coverart not updating on track change
- (Subsonic) Fixed playing a folder from the folder view
- Fixed rating context menu option available from the Genre page
- Added option to disable auto updates
- Fixed gapless playback on certain *sonic servers (#100)
- Fixed playerbar coverart not redirecting to
Now Playing
page
- (Subsonic) Fixed errors blocking playlists from being deleted
- Added Jellyfin server support (#87)
- Supports full Sonixd feature-set (except ratings)
- Added a mini config popover to change list/grid view options on the top action bar
- Added system audio device selector (#96)
- Added context menu option
Set rating
to bulk set ratings for songs (and albums/artists on Navidrome) (#95)
- Reduced cached image from 500px -> 350px (to match max grid size)
- Grid/header images now respect image aspect ratio returned by the server
- Playback filter input now uses a regex validation before allowing you to add
- Renamed all
Name
columns toTitle
- Search bar now clears after pressing enter to globally search
- Added borders to popovers
- Fixed application performance issues when player is crossfading to the next track
- Fixed null entries showing at the beginning of descending sort on playlist/now playing lists
- Tooltips no longer pop up on the artist/playlist description when null
- Added download buttons on the Album and Artist pages (#29)
- Allows you to download (via browser) or copy download links to your clipboard (to use with a download manager)
- Changed default tooltip delay from
500ms
->250ms
- Moved search bar from page header to the main layout action bar
- Added notice for macOS media keys to require trusted accessibility in the client
- Fixed auto playlist and album fetch in Gonic servers
- Fixed the macOS titlebar styling to better match the original (#83)
- Fixed thumbnailclip error when resizing the application in macOS (#84)
- Fixed playlist page not using cached image
- Added additional grid-view customization options (#74)
- Gap size (spaces between cards)
- Alignment (left-align, center-align)
- Changed default album/artist uncached image sizes from
150px
->350px
- (Windows) Fixed default taskbar thumbnail on Windows10 when minimized to use window instead of album cover (#73)
- Fixed playback settings unable to change via the UI
- Crossfade duration
- Polling interval
- Volume fade
- Fixed header styling on the Config page breaking at smaller window widths (#72)
- Fixed the position of the description tooltip on the Artist page
- Fixed the
Add to playlist
popover showing underneath the modal in modal-view
- Removed unused
fonts.size.pageTitle
theme property
- Added extensible theming (#60)
- Added playback presets (gapless, fade, normal) to the config
- Added persistence for column sort for all list-views (except playlist and search) (#47)
- Added playback filters to the config to filter out songs based on regex (#53)
- Added music folder selector in auto playlist (this may or may not work depending on your server)
- Added improved playlist, artist, and album pages
- Added dynamic images on the Playlist page for servers that don't support playlist images (e.g. Navidrome)
- Added link to open the local
settings.json
file - Added setting to use legacy authentication (#63)
- Improved overall application keyboard accessibility
- Playback no longer automatically starts if adding songs to the queue using
Add to queue
- Prevent accidental page navigation when using [Ctrl/Shift + Click] when multi-selecting rows in list-view
- Standardized buttons between the Now Playing page and the mini player
- "Add random" renamed to "Auto playlist"
- Increased 'info' notification timeout from 1500ms -> 2000ms
- Changed default mini player columns to better fit
- Updated default themes to more modern standards (Default Dark, Default Light)
- Fixed title sort on the
Title (Combined)
column on the album list - Fixed 2nd song in queue being skipped when using the "Play" button multiple pages (album, artist, auto playlist)
- Fixed
Title
column not showing the title on the Folder page (#69) - Fixed context menu windows showing underneath the mini player
- Fixed
Add to queue (next)
adding songs to the wrong unshuffled index when shuffle is enabled - Fixed local search on the root Folder page
- Fixed input picker dropdowns following the page on scroll
- Fixed the current playing song not highlighted when using
Add to queue
on an empty play queue - Fixed artist list not using the
artistImageUrl
returned by Navidrome
- Added links to the genre column on the list-view
- Added page forward/back buttons to main layout
- Increase delay when completing mouse drag select in list view from
100ms
->200ms
- Change casing for main application name
sonixd
->Sonixd
- Fixed Linux media hotkey support (MPRIS)
- Added commands for additional events
play
andpause
(used by KDE's media player overlay) - Set status to
Playing
when initially starting a song - Set current song metadata when track automatically changes instead of only when it manually changes
- Added commands for additional events
- Fixed filtered link to Album List on the Album page
- Fixed filtered link to Album List on the Dashboard page
- Fixed font color for lists/tables in panels
- Affects the search view song list and column selector list
- Added music folder selector (#52)
- Added media hotkeys / MPRIS support for Linux (#50)
- This is due to dbus overriding the global shortcuts that electron sends
- Added advanced column selector component
- Drag-n-drop list
- Individual resizable columns
- (Windows) Added tray (Thanks @ncarmic4) (#45)
- Settings to minimize/exit to tray
- Page selections are now persistent
- Active tab on config page
- Active tab on favorites page
- Filter selector on album list page
- Playlists can now be saved after being sorted using column filters
- Folder view
- Now shows all root folders in the list instead of in the input picker
- Now shows music folders in the input picker
- Now uses loader when switching pages
- Changed styling for various views/components
- Look & Feel setting page now split up into multiple panels
- Renamed context menu button
Remove from current
->Remove selected
- Page header titles width increased from
45%
->80%
- Renamed
Scan library
->Scan
- All pages no longer refetch data when clicking back into the application
- Fixed shift-click multi select on a column-sorted list-view
- Fixed right-click context menu showing up behind all modals (#55)
- Fixed mini player showing up behind tag picker elements
- Fixed duration showing up as
NaN:NaN
when duration is null or invalid - Fixed albums showing as a folder in Navidrome instances
- Added folder browser (#1)
- Added context menu button
View in folder
- Requires that your server has support for the original
/getIndexes
and/getMusicDirectory
endpoints
- Added context menu button
- Added configurable row-hover highlight for list-view
- (Windows) Added playback controls in thumbnail toolbar (#32)
- (Windows/macOS) Added window size/position remembering on application close (#31)
- Changed styling for various views/components
- Tooltips added on grid-view card hover buttons
- Mini-player removed rounded borders and increased opacity
- Mini-player removed animation on open/close
- Search bar now activated from button -> input on click / CTRL+F
- Page header toolbar buttons styling consistency
- Album list filter moved from right -> left
- Reordered context menu button
Move selected to [...]
- Decreased horizontal width of expanded sidebar from 193px -> 165px
- Fixed duplicate scrobble requests when pause/resuming a song after the scrobble threshold (#30)
- Fixed genre column not applying in the song list-view
- Fixed default titlebar set on first run
- Fixed using play buttons on the artist view not starting playback
- Fixed favoriting on horizontal scroll menu on dashboard/search views
- Fixed typo on default artist list viewtype
- Fixed artist image selection on artist view
- Added setting to enable scrobbling playing/played tracks to your server (#17)
- Added setting to change between macOS and Windows styled titlebar (#23)
- Added app/build versions and update checker on the config page (#18)
- Added 'view in modal' button on the list-view context menu (#8)
- Added a persistent indicator on grid-view cards for favorited albums/artists (#7)
- Added buttons for 'Add to queue (next)' and 'Add to queue (later)' (#6)
- Added left/right scroll buttons to the horizontal scrolling menu (dashboard/search)
- Added last.fm link to artist page
- Added link to cache location to open in local file explorer
- Added reset to default for cache location
- Added additional tooltips
- Grid-view card title and subtitle buttons
- Cover art on the player bar
- Header titles on album/artist pages
- Changed starring logic on grid-view card to update local cache instead of refetch
- Changed styling for various views/components
- Use dynamically sized hover buttons on grid-view cards depending on the card size
- Decreased size of buttons on album/playlist/artist pages
- Input picker text color changed from primary theme color to primary text color
- Crossfade type config changed from radio buttons to input picker
- Disconnect button color from red to default
- Tooltip styling updated to better match default theme
- Changed tag links to text links on album page
- Changed page header images to use cache (album/artist)
- Artist image now falls back to last.fm if no local image
- Fixed song & image caching (#16)
- Fixed set default artist list view type on first startup
- Initial release