A Save still running with the app in the background now posts a progress notice — how many files, the one it is on, a bar, Stop all and Open — and takes it down when the queue empties. It sits on its own low-importance channel so it can be silenced without silencing the player's card, and rides its own dataSync foreground service rather than the media one: a mediaPlayback service stops itself when the bar empties, a download is not playback, and nothing else was keeping the process alive for a Save with nothing playing — which is how the first real Save died, four tracks in. Stop all goes through the same cancel(id) a row's tap takes, and Transfers grew the matching button beside Clear finished. The walk pushes two rows straight into the transfer store and reads the real notification back out of `dumpsys notification`, without fetching anything.
42 lines
1.0 KiB
TOML
42 lines
1.0 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"src-tauri",
|
|
"setup/src-tauri",
|
|
"crates/soulseek-proto",
|
|
"crates/soulseek-client",
|
|
"crates/player",
|
|
"crates/tagger",
|
|
"crates/metadata",
|
|
"crates/library",
|
|
"crates/audio-formats",
|
|
"crates/freenet-adapter",
|
|
"crates/persona-state",
|
|
"crates/tauri-plugin-media-session",
|
|
"crates/tauri-plugin-storage",
|
|
"crates/tauri-plugin-share",
|
|
"crates/tauri-plugin-transfer-notice",
|
|
]
|
|
|
|
[workspace.package]
|
|
version = "1.8.2-alpha"
|
|
edition = "2021"
|
|
rust-version = "1.77.2"
|
|
authors = ["Trifecta Solutions"]
|
|
|
|
[workspace.dependencies]
|
|
tokio = { version = "1", features = ["rt-multi-thread", "net", "io-util", "sync", "time", "macros", "fs"] }
|
|
bytes = "1"
|
|
thiserror = "2"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0"
|
|
log = "0.4"
|
|
image = { version = "0.25", default-features = false, features = ["jpeg", "png", "webp"] }
|
|
|
|
[profile.dev]
|
|
# Peer connections + audio decode are unusably slow at opt-level 0.
|
|
opt-level = 1
|
|
|
|
[profile.dev.package."*"]
|
|
opt-level = 2
|