zarzet
41340a4a21
feat(metadata): write primary-artist tags in native writers
...
Native tag writers accept artist_tag_mode=primary and keep only the first credited artist in ARTIST and ALBUMARTIST for every format: FLAC download embedding, FLAC/Opus edits, and the ID3, MP4, APE and RIFF writers. The Android finalizer's FFmpeg fallback applies the same rule.
Rust and Kotlin share one separator set (comma, semicolon, ampersand, a spaced x, feat/ft/featuring/with) and test the same fixtures. The Go-parity split_vorbis pattern is unchanged. Refs #618 .
2026-10-01 16:12:44 +07:00
zarzet
fe30871e36
fix(mornye): preserve navbar blur during collapse animations
2026-10-01 01:29:00 +07:00
zarzet
d1eba29a4a
fix(mornye): soften glass rims and increase transparency
2026-10-01 01:29:00 +07:00
zarzet
788c76c22d
chore(release): bump app version to 5.0.7
2026-10-01 01:28:12 +07:00
zarzet
a2974acee0
fix(mornye): respect glass clarity and accessibility limits
2026-10-01 00:42:15 +07:00
zarzet
7a7dd99eab
test(library): keep notifier test counters private
2026-10-01 00:42:15 +07:00
zarzet
fa491356d8
fix(library): spread filters across the search field width
2026-10-01 00:16:38 +07:00
zarzet
cef57af562
fix(library): offer re-enrichment for downloaded selections
2026-10-01 00:16:25 +07:00
zarzet
eed56d4cbb
feat(album): replace selection sharing with metadata re-enrichment
2026-09-30 23:51:54 +07:00
zarzet
ce13e29b71
feat(appearance): add glass clarity controls and directional highlights
2026-09-30 23:42:20 +07:00
zarzet
9ebf98ff6c
perf(mornye): adapt glass and player effects to device capabilities
2026-09-30 23:42:00 +07:00
zarzet
b11e925ee4
perf(player): suspend covered pages and streamline transitions
2026-09-30 23:40:04 +07:00
zarzet
1e246138c8
perf(download): avoid repeated progress decoding and queue regrouping
2026-09-30 23:39:22 +07:00
zarzet
44b7ceb8e8
perf(download): reuse connections across probes and retries
2026-09-30 23:39:22 +07:00
zarzet
9051f37cf5
perf(library): reduce scan allocations and keep SAF workers busy
2026-09-30 23:39:22 +07:00
zarzet
1d3f7a0d44
fix(lyrics): lift timed words together
2026-09-30 22:09:41 +07:00
zarzet
fe88048db2
refactor(backend): retire unused native bridge entry points
2026-09-30 21:47:15 +07:00
zarzet
b8e3a4c166
refactor(download): simplify finalization and remove the retired worker
2026-09-30 21:44:31 +07:00
zarzet
3a63918e1f
refactor(flutter): remove unreachable state and widget APIs
2026-09-30 21:44:16 +07:00
zarzet
b3f7f59e2e
refactor(library): remove unused history lookups and replacement paths
2026-09-30 21:43:54 +07:00
zarzet
377710ec22
refactor(ui): consolidate file feedback and shared display helpers
2026-09-30 21:43:39 +07:00
zarzet
c5789df87d
fix(storage): retain document access for library metadata and covers
2026-09-30 21:42:53 +07:00
zarzet
cda9868a1f
fix(startup): keep shared backend alive across activity recreation
2026-09-30 20:58:36 +07:00
zarzet
fb08110797
fix(download): verify ReplayGain tags independently of metadata embedding
2026-09-30 20:58:18 +07:00
zarzet
2538cdffe1
fix(metadata): preserve the selected recording during download enrichment
2026-09-30 20:58:18 +07:00
zarzet
88508c806a
perf(library): reuse bounded artwork thumbnails during scans
2026-09-30 20:57:59 +07:00
zarzet
6c22a91498
fix(library): preserve partial scans and ignore stale completion events
2026-09-30 20:57:48 +07:00
zarzet
8aa8d598d8
feat(lyrics): keep the screen awake while viewing lyrics
2026-09-30 20:21:21 +07:00
zarzet
a1cec6de51
fix(library): open track metadata from search results
2026-09-30 20:16:08 +07:00
zarzet
e025abeec8
chore(release): sync remote AltStore metadata
v5.0.6
2026-09-28 17:35:57 +07:00
zarzet
e61e54f93f
fix(download): align native metadata preparation and ReplayGain support
2026-09-28 12:21:15 +07:00
zarzet
c0997de19c
style(playback): mark bit-perfect and DAP hi-res output as beta
2026-09-28 12:13:17 +07:00
zarzet
b15bb2673c
fix(library): index native completions and refresh background downloads
2026-09-28 12:13:17 +07:00
zarzet
e3bec31b36
fix(library): preserve indexed tracks when a full scan is incomplete
2026-09-28 12:13:17 +07:00
zarzet
4c2c356763
fix(download): detect mislabeled MP4 before native metadata writes
2026-09-28 12:13:17 +07:00
zarzet
c5a262b865
fix(motion): pause loading effects when hidden or motion is reduced
2026-09-28 11:58:50 +07:00
zarzet
987245de71
style(library): use theme colors for Material collections
2026-09-28 11:58:50 +07:00
zarzet
aeba9b879e
feat(player): show covers and expressive controls in Material queue
2026-09-28 11:58:50 +07:00
zarzet
892911c825
feat(material): unify search filters and extension actions
2026-09-28 11:58:49 +07:00
zarzet
fb13b87561
fix(metadata): resolve album artist consistently across separate downloads
2026-09-28 11:45:10 +07:00
zarzet
25c6292783
fix(settings): use neutral category icons in Material
2026-09-27 18:28:50 +07:00
zarzet
c2eab0da51
fix(material): keep navigation tint continuous through system inset
2026-09-27 18:18:19 +07:00
zarzet
3980f1f851
fix(player): move Material audio output to bottom right
2026-09-27 17:51:45 +07:00
zarzet
fad7e64fd3
fix(player): align Material lyrics toggle to bottom left
2026-09-27 17:48:11 +07:00
zarzet
cd7c60cca7
feat(player): show Material lyrics in the artwork area
2026-09-27 17:40:21 +07:00
zarzet
02a1c8504c
fix(player): give Material quality badge and controls more space
2026-09-27 17:32:27 +07:00
zarzet
472e549f8f
feat(player): animate Material seek bar with expressive waves
2026-09-27 17:18:51 +07:00
zarzet
d390a214c3
feat(material): adopt expressive controls across the app
2026-09-27 17:01:11 +07:00
zarzet
a9ed5a19cd
fix(album): show Material quality badges only for exceptions
2026-09-27 16:15:17 +07:00
zarzet
579c6fe4d9
fix(ui): show Dolby Atmos as a compact logo
2026-09-27 16:11:00 +07:00