aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/mpris.rs5
-rw-r--r--src/queue.rs3
2 files changed, 7 insertions, 1 deletions
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<String, Value<'static>> {
128 Value::new(track.album.clone().unwrap_or_default()), 128 Value::new(track.album.clone().unwrap_or_default()),
129 ); 129 );
130 130
131 map.insert("xesam:trackNumber".into(), Value::new(0i32)); 131 map.insert(
132 "xesam:trackNumber".into(),
133 Value::new(track.track_number.unwrap_or(0)),
134 );
132 135
133 map 136 map
134} 137}
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 {
98 pub title: Option<String>, 98 pub title: Option<String>,
99 pub artist: Option<String>, 99 pub artist: Option<String>,
100 pub album: Option<String>, 100 pub album: Option<String>,
101 pub track_number: Option<i32>,
101 pub duration_secs: Option<f64>, 102 pub duration_secs: Option<f64>,
102 pub is_stream: bool, 103 pub is_stream: bool,
103} 104}
@@ -115,6 +116,7 @@ impl Track {
115 title: metadata.and_then(|m| m.title.clone()), 116 title: metadata.and_then(|m| m.title.clone()),
116 artist: metadata.and_then(|m| m.artist.clone()), 117 artist: metadata.and_then(|m| m.artist.clone()),
117 album: metadata.and_then(|m| m.album.clone()), 118 album: metadata.and_then(|m| m.album.clone()),
119 track_number: metadata.and_then(|m| m.track_number),
118 duration_secs: metadata.and_then(|m| m.duration_secs), 120 duration_secs: metadata.and_then(|m| m.duration_secs),
119 is_stream: false, 121 is_stream: false,
120 } 122 }
@@ -139,6 +141,7 @@ impl Track {
139 title: Some(title), 141 title: Some(title),
140 artist: None, 142 artist: None,
141 album: None, 143 album: None,
144 track_number: None,
142 duration_secs: None, 145 duration_secs: None,
143 is_stream: true, 146 is_stream: true,
144 } 147 }