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.
- Added an option to disable the dynamic title and set it to a static one, #491
- Discord integration now says "Listening to" instead of "playing" #488 && #454
- Fixed several element names in the dom scraper
- Removed the Songwhip (they shut down) integration and replaced it with TIDAL's universal link system
- Fix issue #449 Discord RPC stuck on "Browsing Tidal".
- Fix issue #448 Add option to disable the discord rpc idle text
- Notifications are now send at the end of the update process, allowing other events to happen sooner.
-
Added all missing swagger/openApi info with the help of Times-Z
-
Updated most dependency versions
- This includes Electron 31!
-
Added a channel selector so we can now use Tidal's staging environment directly from the app
- implements #437
- Fixed
getAlbumName
not finding album name whilst on queue page - Added all mediaInfo to mpris interface using the
custom:
prefix
- Simplified
MediaInfo
&Options
types - Added
playingFrom
information to the info API- also changed the way we update Album info since Playing From now shows the correct Album.
- API now allows you to set the
hostname
so you can control who can interact with the API. - Reworked swagger generation hotfix to properly generate
swagger.json
during the compile step- Might switch to tsoa in the future, idk yet.
- Added Tidal Magazine integration (in the menubar or use
Ctrl + M
)
- removed Swagger generation step in favor of pre-generated file.
- This also fixes the API issue #409
- This also stops TIDAL-hifi from scanning your entire home directory... the glob was very broad apparently.
- Fixed #403 "cannot read shuffle of undefined" error
- Added an API to add & delete entries from the skippedArtists list in the settings. fixes #405
GET /settings/skipped-artists
-> get list of skipped artistsPOST /settings/skipped-artists
-> add to the list of skipped artistsPOST /settings/skipped-artists/delete
-> delete from the list of skipped artistsPOST /settings/skipped-artists/current
-> skip the current artistDELETE /settings/skipped-artists/current
-> delete the current artist from the skip list- Added Swagger documentation to the new endpoints:
- CORS support added by Mjokfox
- Added Shuffle and Repeat state to API response - By ThatGravyBoat
-
Re-implemented the API, added support for duration/current in seconds & shuffle+repeat
- made the original API "legacy" (still works the same)
- Now using the correct HTTP verb for all new endpoints
-
Implemented TIDAL's universal links. All links are now universal.
-
Custom
tidal://
protocol fixed - By TheRockYT -
Global media shortcuts removed since TIDAL includes them by default - By TheRockYT
-
Fixes
- TIDAL will now close the previous notification if a new one is sent whilst the old is still visible. #364
- Updated developer documentation to get started in README #365
- Links in the about window now open in the user's default browser. fixes #360
- Refactored "nowPlaying" code to always display the current state, even when the built-in UI is updated.
- Reverted to using old icon syntax with icons in the build directory. fixes #350
- Enabled wayland platform flags by default when launching through .desktop file
- More Discord options:
- Added the ability to hide the current song from the discord activity and display a custom text instead
- Added the ability to customize the text that is shown when no song is playing
- Discord now reacts to pausing/unpausing events
- Refactored media info updates so it only updates the required info, fixes #342, #306
- Added 5.9.0 logs/versions/migrations
- Fixed chromium mediaSession instance showing up. fixes #338 #198
- Set a new icon, should fix #302
- Made sure settingsWindow exists before operating on it. fixes #344
-
Updated Electron to 28.1.1 (fixes 325)
-
Updated dependencies to latest
- added theme files to stylelint ignore
- fixed other stylelint errors
-
Added functionality to favorite a song (fixes #323)
- Added a hotkey to favorite ("Add to collection") songs: Control+a
- Added the "favorite" field in the
mediaInfo
and the API/current
endpoint - Added an endpoint to toggle favoriting a song:
http://localhost:47836/favorite/toggle
-
Fixed wrong "end time stamp" for currently playing song (fixes #282)
- Affected the API + all integrations
- As requested we also added toggle to sync the timestamps to Discord (default = true)
- Fixed mpris not being set up correctly due to capitalization of the instance name.
- Renamed app to TIDAL Hi-Fi.
- Made sure all windows run with the same web preferences set (compared to main app).
- Fixes the last.fm bug.
- Added settings to customize the Discord rich presence information
- Discord settings are now also collapsible like the ListenBrainz ones are
- Restyled settings menu to include version number and useful links on the about page
- The ListenBrainz integration has been extended with a configurable (5 seconds by default) delay in song reporting so that it doesn't spam the API when you are cycling through songs.
- Custom CSS now also applies to settings window
- Added support for Wayland (on by default) fixes #262 and #157
- Made it clear in the readme that this TIDAL Hi-Fi client supports High & Max audio settings. fixes #261
- Added app suspension inhibitors when music is playing. fixes #257
- Fixed bug with theme files from user directory trying to load: "an error occurred reading the theme file"
- Fixed: config flags not being set correctly
- [DEV]:
- Logger is now static and will automatically call either ipcRenderer or ipcMain
- ListenBrainz integration added (thanks @Mar0xy)
- Removed Windows builds (from publishes) as they don't work anymore.
- Added Songwhip integration
- Fixed bug with several hotkeys not working due to Tidal's HTML/css changes
- [DEV]:
- added a logger to log into STDout
- added "watchStart" which will automatically restart electron when it detects a source code change
- added "listen.tidal.com-parsing-scripts" folder with a script to verify whether all elements (in the main preload.ts) are present on the page
- SPKChaosPhoenix updated the beautiful Tokyo Night theme:
-
moved from Javascript to Typescript for all files
- use
npm run watch
to watch for changes & recompile typescript and sass files
- use
-
Added support for theming the application
-
Added drone build file use
drone exec
or drone.ci to build it
- Added proper updates through the MediaSession API
- You can now add custom CSS in the "advanced" settings tab
- You can now configure the updateFrequency in the settings window
- Default value is set to 500 and will overwrite the hardcoded value of 100
- Any songs including an artist listed in the
skipped artists
setting will now be skipped even if the song is a collaboration. - Linux desktop icons have been fixed. See #222 for details.
-
Replaced "muting artists" with a full implementation of an Adblock mechanism
Disabled audio & visual ads, unlocked lyrics, suggested track, track info, unlimited skips thanks to uBlockOrigin custom filters (source)
-
@thanasistrisp updated Electron to 24.1.2 and fixed the tray bug :)
- Updated shortcut hint on the menubar to reflect the new
ctrl+=
shortcut. - Reverted icon path to
icon.png
instead of the hardcoded linux path. - Add support to autoHide the menubar and showing it with the
alt
key. - Move the quit command from the system sub-menu to the main menu
- Added single click focus/show on the tray icon
- Doesn't work on all platforms. Nothing I can do about that unfortunately!
- Added a list of artists to automatically skip.
- I don't like the vast majority of dutch music so I added one of them to my list to test: ./docs/no-dutch-music.mp4
- fix: App always requests a default-url-handler-scheme change on start
- Added a setting to disable background throttling (docs)
- New settings window by BlueManCZ
- Fixed the desktop files in electron-builder
- icon is set to new static path based on Arch/Debian
- Name has changed to TIDAL Hi-Fi
- Changed the category of the desktop file to AudioVideo
- Changed desktop file name to "TIDAL Hi-Fi"
- Fixed
cannot read property of undefined
error because of not passing mainWindow around. - vincens2005, fixed inconsistent auto muting
- Added
tidal://
protocol support - Switched icon strategies to fix bugs with icons
- Fixed tray icon bugs
- Menu now shows in KDE as well
- Toggle window is supported from tray icon
- regular click is still ignored, see this issue
- Fixed about tab not showing
- Fixed playback, mpris and API issues
- Updated build config to make use of a base file that doesn't build anything.
- This fixes the issue of unwanted extra build targets that were introduced with the electron-builder update
- Updated to Electron 19.0.5
- Media update timeout set to 500 instead of 200
- Updated property name for duration because of a tidal update
- flag for "disable hardware media keys" now working again
- Added a separate advanced options settings panel with flags
- Added gpu-rasterization flag
- config setting
disableHardwareMediaKeys
moved toflags.disableHardwareMediaKeys
, it will be migrated automatically
- Updated to Electron 15
- Fixed the develop "build-unpacked" command
- Added setting to disable multiple TIDAL Hi-Fi windows (defaults to true)
- Added setting to disable HardwareMediaKeyHandling (defaults to false)
- Updated dependencies
- Downgraded packaged version of electron to 8.5.2, doesn't seem to like a newer build
- Fixed the annoying (and useless) terminal warning about
allowRendererProcessReuse
- Mar0xy fixed some build issues (thanks!)
- vincens2005 fixed the quit button in the menubar
- Added the ability to mute artists automatically
- Added better error handling for discord rpc
- Disabled sandboxing to fix a display compositor issue on Linux.
- Fixed bug: Triggering full screen from the Tidal web app would cause the menubar to be visible even if it was disabled in the settings
- Switched to the native Notifier (removed node-notifier)
- Album art now also has a name, based on best effort
- Add album images to media info and discord
- Notify-send now correctly shows "Tidal Hi-Fi" as the program name
- Updated dependencies (including electron itself)
- Requires older version of nodejs due to electron-builder (use lts/gallium)
updated to nodejs 16 in actions
- Added more MPRIS settings
- Added instruction for rescrobbler to get last.fm working without sandbox mode
- Added a setting to minimize to tray on app close (off by default)
- Added the main menu to the tray icon
- artists is now gotten specifically from the footer. This fixes the unknown artists bug.
- the discord module will check whether the artists is empty and if so substitute it with a default message. This is to prevent sending an empty state to Discord (which it doesn't support). fixes #45
moved to: https://github.com/Mastermindzh/tidal-hifi-aur
- The discord integration now adds a time remaining field based on the song duration
- All fields (current, remaining, and url are also available in the API*)
- the artist field is now correctly identified
* current time only updates on play/pause.
- The discord integration now doesn't send an update every 15 seconds it sends an update whenever the media info changes
- consolidated updating the media info changes with the status changes into a single global event
- Mar0xy added Discord integration.
- Several versions have been bumped to fix vulnerabilities
- Changed settings hotkey from "ctrl+/" to "ctrl+=" to avoid a conflict with the default Tidal hotkeys
- Added a setting to disable custom hotkeys
- Fixed the bug that the previous song hotkey would register 3 times. (Twice due to a duplicate block of code + once from the default tidal hotkey)
-- re-enabled MPRIS-service wit the electron downloader fixes
- Added the ability to disable the tray icon
Bugfixes:
- Arch AUR install failed before, it is fixed now by using the included build scripts
-
updated to electron 8.0.0
-
Added a beta-version of the MPRIS service
-
Bugfixes:
- icon on gnome not showing in launcher
- app not remembering size on startup