vicrodh
b049b1cd5c
feat(myqbz): detail playback — resolve collection + drive the queue
Phase-2 Slice 5. Wires the detail view's hero Play/Shuffle and per-row play
actions to the qbz-mixtape enqueue resolver:
- src/myqbz_play.rs: builds ProdItemResolver (qobuz client snapshot-cloned + a
Send+Sync local closure that runs with_db SYNCHRONOUSLY, so &LibraryDatabase
never crosses an .await), resolve_collection_tracks, drives the qbz-core queue.
- Hero Play = replace per the collection play_mode + stamp queue-source +
touch_play. Hero Shuffle = force album_shuffle. Per-row Play/Play-next/
Add-to-queue = single-item resolve with inline source_item_id_hint, no
queue-source stamp/touch_play; play-next inserts in reverse. Failing items
logged+skipped; empty resolve toasts "0 playable tracks".
- Un-stubbed on_play_all/on_shuffle/on_play_item/on_item_action; dj-mix/edit/
delete/sync stay stubs (later slices). skip-to-item deferred.
Backend crates untouched. cargo check -p qbz-slint green.
cc