@@ -242,7 +242,7 @@ class MprisPlayer: public QObject {
242
242
// / Equivalent to calling @@play() if not playing or @@pause() if playing.
243
243
// /
244
244
// / May only be called if @@canTogglePlaying is true, which is equivalent to
245
- // / @@canPlay or @@canPause() depending on the current playback state.
245
+ // / @@canPlay or @@canPause depending on the current playback state.
246
246
Q_INVOKABLE void togglePlaying ();
247
247
248
248
[[nodiscard]] bool isValid () const ;
@@ -391,6 +391,7 @@ private slots:
391
391
private:
392
392
void onMetadataChanged ();
393
393
void onPositionUpdated ();
394
+ void onPlaybackStatusUpdated ();
394
395
// call instead of setting bpPosition
395
396
void setPosition (qlonglong position);
396
397
void requestPositionUpdate () { this ->pPosition .requestUpdate (); };
@@ -462,7 +463,7 @@ private slots:
462
463
QS_DBUS_PROPERTY_BINDING (MprisPlayer, qlonglong, pPosition, bpPosition, onPositionUpdated, playerProperties, " Position" , false );
463
464
QS_DBUS_PROPERTY_BINDING (MprisPlayer, pVolume, bVolume, playerProperties, " Volume" , false );
464
465
QS_DBUS_PROPERTY_BINDING (MprisPlayer, pMetadata, bpMetadata, playerProperties, " Metadata" );
465
- QS_DBUS_PROPERTY_BINDING (MprisPlayer, pPlaybackStatus, bpPlaybackStatus, playerProperties, " PlaybackStatus" );
466
+ QS_DBUS_PROPERTY_BINDING (MprisPlayer, void , pPlaybackStatus, bpPlaybackStatus, onPlaybackStatusUpdated, playerProperties, " PlaybackStatus" , true );
466
467
QS_DBUS_PROPERTY_BINDING (MprisPlayer, pLoopStatus, bpLoopStatus, playerProperties, " LoopStatus" , false );
467
468
QS_DBUS_PROPERTY_BINDING (MprisPlayer, pRate, bRate, playerProperties, " Rate" , false );
468
469
QS_DBUS_PROPERTY_BINDING (MprisPlayer, pMinRate, bMinRate, playerProperties, " MinimumRate" , false );
@@ -477,6 +478,8 @@ private slots:
477
478
DBusMprisPlayer* player = nullptr ;
478
479
QString mTrackId ;
479
480
QString mTrackUrl ;
481
+ QString mTrackTitle ;
482
+ bool trackChangedBeforeState = false ;
480
483
};
481
484
482
485
} // namespace qs::service::mpris
0 commit comments