Skip to content

Commit 90e64b2

Browse files
committed
feat(mpris): Signal when position changed
1 parent f4f330f commit 90e64b2

1 file changed

Lines changed: 9 additions & 4 deletions

File tree

src/mpris_event_handler.rs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1126,7 +1126,6 @@ impl MprisPlayerService {
11261126
// * `position`: The new position, in microseconds.
11271127
#[zbus(signal)]
11281128
async fn seeked(signal_ctxt: &zbus::SignalContext<'_>, position: TimeInUs) -> zbus::Result<()>;
1129-
// FIXME: signal on appropriate player events!
11301129
}
11311130

11321131
#[derive(Debug, Error)]
@@ -1428,8 +1427,10 @@ impl MprisTask {
14281427

14291428
iface.position = Some(Position::from(position_ms));
14301429

1431-
let meta = &mut iface.metadata;
1430+
MprisPlayerService::seeked(iface_ref.signal_context(), position_ms as i64 * 1000)
1431+
.await?;
14321432

1433+
let meta = &mut iface.metadata;
14331434
if meta.mpris.track_id.as_ref() != Some(&track_id) {
14341435
*meta = Metadata::default();
14351436
meta.mpris.track_id = Some(track_id);
@@ -1447,8 +1448,10 @@ impl MprisTask {
14471448

14481449
iface.position = Some(Position::from(position_ms));
14491450

1450-
let meta = &mut iface.metadata;
1451+
MprisPlayerService::seeked(iface_ref.signal_context(), position_ms as i64 * 1000)
1452+
.await?;
14511453

1454+
let meta = &mut iface.metadata;
14521455
if meta.mpris.track_id.as_ref() != Some(&track_id) {
14531456
*meta = Metadata::default();
14541457
meta.mpris.track_id = Some(track_id);
@@ -1466,8 +1469,10 @@ impl MprisTask {
14661469

14671470
iface.position = Some(Position::from(position_ms));
14681471

1469-
let meta = &mut iface.metadata;
1472+
MprisPlayerService::seeked(iface_ref.signal_context(), position_ms as i64 * 1000)
1473+
.await?;
14701474

1475+
let meta = &mut iface.metadata;
14711476
if meta.mpris.track_id.as_ref() != Some(&track_id) {
14721477
*meta = Metadata::default();
14731478
meta.mpris.track_id = Some(track_id);

0 commit comments

Comments
 (0)