d32ff688eb
Update default settings for album cover and song lyrics search options to be disabled
...
This commit modifies the default state of the "Automatically search for album cover" and "Automatically search for song lyrics" options to false in the UI and corresponding settings logic. Additionally, it updates the macOS Info.plist to disable automatic update checks by default.
2026-01-22 19:52:46 +09:00
bd59c19301
Implement Mac App Store build support by introducing the BUILD_FOR_MAC_APP_STORE option. This change disables Sparkle and localhost OAuth redirect server for MAS builds, updates CMake configuration, and modifies build scripts accordingly. Additionally, the macOS bundle identifier is now configurable via CMake.
2026-01-22 19:28:00 +09:00
6a1d8bbc87
Refactor About dialog by removing contributor information and reducing height of the dialog. Update README.md to clarify the fork's source and upstream repository links.
2026-01-22 18:48:06 +09:00
3f9de8e1d9
Remove funding configuration and clean up translation files by standardizing XML declaration format and removing sponsorship-related messages across multiple language files.
Build / Build openSUSE (leap:15.6) (push) Has been cancelled
Build / Build openSUSE (leap:16.0) (push) Has been cancelled
Build / Build openSUSE (tumbleweed) (push) Has been cancelled
Build / Build Fedora (42) (push) Has been cancelled
Build / Build Fedora (43) (push) Has been cancelled
Build / Build Fedora (44) (push) Has been cancelled
Build / Build OpenMandriva (cooker) (push) Has been cancelled
Build / Build Mageia (9) (push) Has been cancelled
Build / Build Debian (bookworm) (push) Has been cancelled
Build / Build Debian (forky) (push) Has been cancelled
Build / Build Debian (trixie) (push) Has been cancelled
Build / Build Ubuntu (noble) (push) Has been cancelled
Build / Build Ubuntu (questing) (push) Has been cancelled
Build / Build Ubuntu (resolute) (push) Has been cancelled
Build / Upload Ubuntu PPA (noble) (push) Has been cancelled
Build / Upload Ubuntu PPA (questing) (push) Has been cancelled
Build / Upload Ubuntu PPA (resolute) (push) Has been cancelled
Build / Build FreeBSD (push) Has been cancelled
Build / Build OpenBSD (push) Has been cancelled
Build / Build macOS Public (release, macos-15) (push) Has been cancelled
Build / Build macOS Public (release, macos-15-intel) (push) Has been cancelled
Build / Build macOS Private (release, macos-arm64) (push) Has been cancelled
Build / Build Windows MinGW (i686, debug) (push) Has been cancelled
Build / Build Windows MinGW (i686, release) (push) Has been cancelled
Build / Build Windows MinGW (x86_64, debug) (push) Has been cancelled
Build / Build Windows MinGW (x86_64, release) (push) Has been cancelled
Build / Build Windows MSVC (arm64, debug, arm64 debug, windows-11-arm) (push) Has been cancelled
Build / Build Windows MSVC (arm64, release, arm64 release, windows-11-arm) (push) Has been cancelled
Build / Build Windows MSVC (x86, debug, x86 debug, windows-2022) (push) Has been cancelled
Build / Build Windows MSVC (x86, release, x86 release, windows-2022) (push) Has been cancelled
Build / Build Windows MSVC (x86_64, debug, x86_64 debug, windows-2022) (push) Has been cancelled
Build / Build Windows MSVC (x86_64, release, x86_64 release, windows-2022) (push) Has been cancelled
Build / Upload (push) Has been cancelled
Build / Attach to release (push) Has been cancelled
2026-01-22 18:37:33 +09:00
c673fd2a76
Refactor sponsorship-related code and update .gitignore for macOS build
...
Build / Build openSUSE (leap:15.6) (push) Has been cancelled
Build / Build openSUSE (leap:16.0) (push) Has been cancelled
Build / Build openSUSE (tumbleweed) (push) Has been cancelled
Build / Build Fedora (42) (push) Has been cancelled
Build / Build Fedora (43) (push) Has been cancelled
Build / Build Fedora (44) (push) Has been cancelled
Build / Build OpenMandriva (cooker) (push) Has been cancelled
Build / Build Mageia (9) (push) Has been cancelled
Build / Build Debian (bookworm) (push) Has been cancelled
Build / Build Debian (forky) (push) Has been cancelled
Build / Build Debian (trixie) (push) Has been cancelled
Build / Build Ubuntu (noble) (push) Has been cancelled
Build / Build Ubuntu (questing) (push) Has been cancelled
Build / Build Ubuntu (resolute) (push) Has been cancelled
Build / Upload Ubuntu PPA (noble) (push) Has been cancelled
Build / Upload Ubuntu PPA (questing) (push) Has been cancelled
Build / Upload Ubuntu PPA (resolute) (push) Has been cancelled
Build / Build FreeBSD (push) Has been cancelled
Build / Build OpenBSD (push) Has been cancelled
Build / Build macOS Public (release, macos-15) (push) Has been cancelled
Build / Build macOS Public (release, macos-15-intel) (push) Has been cancelled
Build / Build macOS Private (release, macos-arm64) (push) Has been cancelled
Build / Build Windows MinGW (i686, debug) (push) Has been cancelled
Build / Build Windows MinGW (i686, release) (push) Has been cancelled
Build / Build Windows MinGW (x86_64, debug) (push) Has been cancelled
Build / Build Windows MinGW (x86_64, release) (push) Has been cancelled
Build / Build Windows MSVC (arm64, debug, arm64 debug, windows-11-arm) (push) Has been cancelled
Build / Build Windows MSVC (arm64, release, arm64 release, windows-11-arm) (push) Has been cancelled
Build / Build Windows MSVC (x86, debug, x86 debug, windows-2022) (push) Has been cancelled
Build / Build Windows MSVC (x86, release, x86 release, windows-2022) (push) Has been cancelled
Build / Build Windows MSVC (x86_64, debug, x86_64 debug, windows-2022) (push) Has been cancelled
Build / Build Windows MSVC (x86_64, release, x86_64 release, windows-2022) (push) Has been cancelled
Build / Upload (push) Has been cancelled
Build / Attach to release (push) Has been cancelled
This commit removes sponsorship-related UI elements and functionality from the application, including the donation links and associated logic in the main window and radio services. Additionally, the .gitignore file is updated to exclude various macOS-specific files and directories, ensuring a cleaner build environment while retaining necessary build tooling scripts.
2026-01-22 17:22:53 +09:00
484ce3f737
Add language defaults for first-run experience and introduce Qt tool command wrapper
...
This commit sets default languages to English for the application unless the user specifies a different language, ensuring a consistent first-run experience across different system locales. Additionally, a wrapper for Qt tools is introduced in the CMake configuration for non-Windows platforms to filter out non-actionable output during builds.
2026-01-22 14:48:03 +09:00
Jonas Kvinge
1994c367c9
CollectionWatcher: Add more extensions as valid images
2026-01-19 23:15:48 +01:00
Jonas Kvinge
f37b1099f3
MainWindow: Remove parent object from MetadataRequest
2026-01-18 00:36:57 +01:00
Jonas Kvinge
626dd48730
FilterTreeTerm: Add sort tags
2026-01-18 00:10:09 +01:00
Jonas Kvinge
6f7b8ab162
Add sort columns to filter parser
...
Also pass the filter column enum through to filter tree instead of string.
2026-01-17 23:48:54 +01:00
Jonas Kvinge
64540ef6f9
MergedProxyModel: Ignore -Wstringop-overflow
2026-01-17 16:23:08 +01:00
Jonas Kvinge
4f554f5d5f
FilterParser: Optimize code
2026-01-17 15:24:31 +01:00
Jonas Kvinge
326fe84e8a
CollectionWatcher: Update directories with missing mtime
...
mtime is missing on FAT mountpoints, so continue scan if mtime is zero, and remove directory based on existence instead of mtime.
2026-01-17 04:11:17 +01:00
Jonas Kvinge
1bded170a2
CollectionWatcher: Add const
2026-01-17 03:32:53 +01:00
Rob Stanfield
a71e5b170b
Fetch metadata and allow editing for stream songs
2026-01-13 01:31:05 +01:00
Rob Stanfield
ea629aedd1
Get genre metadata for Tidal, Qobuz and Spotify
...
Extract genre information when fetching favorites and search results.
Genre is now populated in the collection and playlists for
tracks from these streaming services.
2026-01-13 01:31:05 +01:00
Strawberry Bot
610b458196
New translations
2026-01-13 00:14:09 +01:00
Célestin Matte
ad285a91f2
PlaylistContainer: Remove duplicate connect
2026-01-12 21:55:58 +01:00
Jonas Kvinge
83d5f3d8f2
Song: Remove Spotify from stream_url_can_expire
...
Spotify URIs don't expire and are handled directly by gst-plugin-spotify.
Only the access token needs refresh, which is handled via UpdateSpotifyAccessToken().
2026-01-09 00:27:18 +01:00
Jonas Kvinge
582b8e8076
Make sure collection directory (root) is not removed from subdirs
...
Fixes #1914
2026-01-08 23:40:13 +01:00
Jonas Kvinge
030908f6ac
CollectionWatcher: Avoid checking for valid media file early
...
Optimize the collection scanning process by deferring media file validation from the initial directory scan to the actual file processing stage. Instead of calling `IsMediaFileBlocking` early to filter files, all non-rejected files are added to the scan queue and validated later during `ReadFileBlocking`. Invalid files are removed from the tracked files list, causing them to be treated as deleted from the collection.
2026-01-06 22:39:58 +01:00
Jonas Kvinge
d2b5359fa9
UnixSignalWatcher: Ignore -Wunused-result
2026-01-04 01:03:48 +01:00
Jonas Kvinge
1d82977441
Exit on SIGTERM
2026-01-04 00:23:13 +01:00
Marcus Müller
17519076f5
Include .webp in allowed extensions
...
Modern Qt can read and write webp out of the box, no use excluding that.
Signed-off-by: Marcus Müller <mueller@baseband.digital >
2026-01-03 16:55:29 +01:00
Jonas Kvinge
e8d9e1172f
FileViewTreeModel: Add const
2026-01-03 16:09:56 +01:00
Alexopus
aac8d4e68b
Add file tree view
2026-01-03 15:11:56 +01:00
Jonas Kvinge
370bebff5f
CollectionView: Fix Enter/Return behavior to respect double-click settings
...
Fixes #1691
2025-12-30 19:08:52 +01:00
Jonas Kvinge
db410cc257
MainWindow: Remove unused declaration
2025-12-29 22:14:08 +01:00
Jonas Kvinge
20a9946e51
Song: Prefer filenames with "front" or "cover" for art automatic
...
Fixes #1745
2025-12-29 21:16:06 +01:00
Strawberry Bot
da2f28811a
New translations
2025-12-29 00:02:45 +01:00
Jonas Kvinge
0bfa736081
GstEnginePipeline: Add audioresample elements
2025-12-28 22:01:42 +01:00
Jonas Kvinge
1392bcbbe1
FilesystemMusicStorage: Fallback to delete if moving to trash fails
...
Fixes #1679
2025-12-28 21:28:49 +01:00
Jonas Kvinge
11705889f1
Show playlist load errors
...
Fixes #1470
2025-12-28 20:54:36 +01:00
Stickman
25065ba98f
Song: Include Opus for supported sort tags
2025-12-28 18:57:52 +01:00
Jonas Kvinge
7b16ec62bb
Defer playcount and rating tag writes for currently playing Ogg songs
...
Fixes #1816
2025-12-28 18:33:49 +01:00
Jonas Kvinge
d8f31592b9
Remove settings member variables
2025-12-28 00:39:22 +01:00
Jonas Kvinge
80bb0f476d
CollectionModel: Remove sort tags from container keys
...
Fixes #1899
2025-12-27 21:25:54 +01:00
Jonas Kvinge
8d262959c1
GstEnginePipeline: Fix buffering issue near track end during gapless playback
...
Ignore buffering messages when within 5 seconds of track end and about-to-finish has been signaled. This prevents spurious buffering from blocking playback during track transitions with local files.
Fixes #1725
2025-12-20 01:36:49 +01:00
Jonas Kvinge
b9b70399d8
GstEnginePipeline: Fix possible race condition in pipeline destructor
...
Wait for ongoing state changes to complete before setting pipeline to NULL.
This prevents race conditions with async state transitions that can cause crashes in GStreamer elements.
Fixes #1875
2025-12-20 01:28:53 +01:00
Jonas Kvinge
527ccd212a
SmartPlaylistsViewContainer: Ask for confirmation before resetting smart playlists
2025-12-19 01:03:46 +01:00
Jonas Kvinge
4a5afbeb1e
SmartPlaylists: Add option to restore smart playlists to the defaults
...
Fixes #1848
2025-12-19 00:49:05 +01:00
Jonas Kvinge
63c14e014b
EditTagDialog: Ignore unused const variables
2025-12-19 00:47:35 +01:00
Jonas Kvinge
801658c6b9
MainWindow: Check that current is the active playlist
...
Fixes #1783
2025-12-19 00:38:32 +01:00
Jonas Kvinge
16fe665295
TagReaderTagLib: Remove unused constants
2025-12-19 00:35:02 +01:00
Rob Stanfield
2bb0dbada2
Qobuz: Fix authentication and add automatic credential fetching
...
Qobuz API now requires intent=stream parameter for stream URL requests,
and the app_secret must be extracted using the Spoofbuz decoding method
from bundle.js rather than plain-text values.
Changes:
- Add intent=stream parameter to stream URL requests
- Add QobuzCredentialFetcher class to extract credentials from web player
- Add "Fetch Credentials" button to Qobuz settings page
- Decode obfuscated app secrets using seed/timezone/info/extras method
This fixes "Invalid Request Signature" errors that prevented playback.
2025-12-18 23:12:52 +01:00
Jonas Kvinge
2cd9498469
Add option to select ID3v2 version
...
Fixes #1861
2025-12-18 22:18:26 +01:00
Jonas Kvinge
d1ee27fff9
QobuzService: Remove QNetworkReply
2025-12-18 20:39:21 +01:00
Jonas Kvinge
91adf5ba32
NetworkAccessManager: Handle network state changes after system suspend/resume
...
Fixes #1521
2025-12-18 20:32:07 +01:00
Jonas Kvinge
d68f464269
Playlist: Don't automatically sort playlist before it's fully loaded
...
Fixes #1690
2025-12-18 20:14:36 +01:00
Jonas Kvinge
c684a95f89
GstEnginePipeline: Fix file descriptor exhaustion by using shared thread pool
...
Replace per-pipeline QThreadPool with a shared static pool to prevent
file descriptor and thread exhaustion. Each GstEnginePipeline was creating
its own thread pool, leading to resource accumulation during frequent
pipeline creation/destruction (track changes, seeking, crossfade).
The shared pool is limited to 2 threads max since state changes are
typically sequential per pipeline. This prevents the crash in g_wakeup_new()
when creating eventfd for new thread event dispatchers.
Fixes #1687
2025-12-18 19:58:23 +01:00