From fdfe24213d70b5548fb09051a0e32b7224210231 Mon Sep 17 00:00:00 2001 From: salmonik Date: Mon, 6 Jul 2026 15:58:01 +0200 Subject: add track index to MPRIS --- src/mpris.rs | 5 ++++- src/queue.rs | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/mpris.rs b/src/mpris.rs index 0c637c0..a7ac360 100644 --- a/src/mpris.rs +++ b/src/mpris.rs @@ -128,7 +128,10 @@ fn build_metadata(track: &Track) -> HashMap> { Value::new(track.album.clone().unwrap_or_default()), ); - map.insert("xesam:trackNumber".into(), Value::new(0i32)); + map.insert( + "xesam:trackNumber".into(), + Value::new(track.track_number.unwrap_or(0)), + ); map } diff --git a/src/queue.rs b/src/queue.rs index 7675ddd..1f2f0fc 100644 --- a/src/queue.rs +++ b/src/queue.rs @@ -98,6 +98,7 @@ pub struct Track { pub title: Option, pub artist: Option, pub album: Option, + pub track_number: Option, pub duration_secs: Option, pub is_stream: bool, } @@ -115,6 +116,7 @@ impl Track { title: metadata.and_then(|m| m.title.clone()), artist: metadata.and_then(|m| m.artist.clone()), album: metadata.and_then(|m| m.album.clone()), + track_number: metadata.and_then(|m| m.track_number), duration_secs: metadata.and_then(|m| m.duration_secs), is_stream: false, } @@ -139,6 +141,7 @@ impl Track { title: Some(title), artist: None, album: None, + track_number: None, duration_secs: None, is_stream: true, } -- cgit v1.2.3