UI Overhaul

- Windows support: drift now runs natively on Windows, using named pipes instead of Unix sockets.
- Song context menu: press G on any song for quick actions like play, queue, add to playlist, and song info
- Redesined command menu: the : prompt has a new, cleaner design
- Visualizer: a live audio visualizer now sits in the bottomleft corner
- Keybind hints: the most useful shortcuts are showen next to the volume control
This commit is contained in:
socatlolmeow 2026-10-11 17:49:53 +02:00
commit 1d579f5311
12 changed files with 1088 additions and 160 deletions

View file

@ -305,8 +305,8 @@ fn ytdlp_search(query: &str) -> Result<Vec<Track>> {
}
fn ytdlp_entries(target: &str) -> Result<Vec<Track>> {
let out = Command::new("yt-dlp")
.args([
let mut cmd = Command::new("yt-dlp");
cmd.args([
"--flat-playlist",
"--dump-json",
"--no-warnings",
@ -315,7 +315,8 @@ fn ytdlp_entries(target: &str) -> Result<Vec<Track>> {
"15",
])
.arg(target)
.stdin(Stdio::null())
.stdin(Stdio::null());
let out = crate::sys::no_window(&mut cmd)
.output()
.map_err(|e| anyhow!("could not run yt-dlp ({e}); is it installed and on PATH?"))?;