fix: stabilize playback memory, local library sync and Qt settings

Add shared playback memory profiles, bounded disk-backed playback and storage
selection for desktop and daemon. Preserve gapless during streaming-only playback
and provide explicit cache eviction with playback confirmation.

Stop watcher read events and unchanged scans from rebuilding the local catalog.
Restore playlist/sidebar updates, folder availability feedback and player layout.
Add appearance presets and a radio-based cache settings panel with translated
trade-offs, plus consistent clipboard menus across visible Qt text editors.

Validate with Rust regressions, QML interaction tests, isolated release startup
and idle-library checks; extend the shared local and CI gates.

cx
This commit is contained in:
vicrodh committed 2026-09-13 02:57:21 -06:00
1 parent 3cf1f32177
commit e291eb3af4
118 files changed
+7128 -883

No files matched your search

+3 -2
View File
@@ -66,7 +66,8 @@ Rectangle {
readonly property bool pulled: root.item.qobuzUnavailable === true
readonly property int cacheStatus: root.item.cacheStatus !== undefined
? root.item.cacheStatus : 0
readonly property bool pulledDead: root.pulled && root.cacheStatus !== 3
readonly property bool pulledDead: (root.pulled && root.cacheStatus !== 3)
|| root.item.sourceUnavailable === true
/// `modifiers` rides straight off the mouse event: Shift is what turns
/// a click into a range (controls/SelectionModel.qml).
signal toggleSelect(int modifiers)
@@ -123,7 +124,7 @@ Rectangle {
/// below all resolve a catalog id.
readonly property bool catalogRow: {
var src = root.item.source || ""
return src !== "local" && src !== "plex"
return src === "" || src === "qobuz"
}
function menuEntries() {