add missing MPRIS shuffle handlers

This commit is contained in:
Drew Weymouth
2026-07-24 16:16:50 -07:00
parent e3c2499645
commit 0e49d4bd58
+14
View File
@@ -22,6 +22,7 @@ var (
_ types.OrgMprisMediaPlayer2Adapter = (*MPRISHandler)(nil)
_ types.OrgMprisMediaPlayer2PlayerAdapter = (*MPRISHandler)(nil)
_ types.OrgMprisMediaPlayer2PlayerAdapterLoopStatus = (*MPRISHandler)(nil)
_ types.OrgMprisMediaPlayer2PlayerAdapterShuffle = (*MPRISHandler)(nil)
)
var errNotSupported = errors.New("not supported")
@@ -226,6 +227,8 @@ func (m *MPRISHandler) PlaybackStatus() (types.PlaybackStatus, error) {
return "", errors.New("unknown playback status")
}
// OrgMprisMediaPlayer2PlayerAdapterLoopStatus implementation
func (m *MPRISHandler) LoopStatus() (types.LoopStatus, error) {
switch m.pm.GetLoopMode() {
case LoopAll:
@@ -252,6 +255,17 @@ func (m *MPRISHandler) SetLoopStatus(status types.LoopStatus) error {
return nil
}
// OrgMprisMediaPlayer2PlayerAdapterShuffle implementation
func (m *MPRISHandler) Shuffle() (bool, error) {
return m.pm.IsShuffle(), nil
}
func (m *MPRISHandler) SetShuffle(shuffle bool) error {
m.pm.SetShuffle(shuffle)
return nil
}
func (m *MPRISHandler) Rate() (float64, error) {
return 1, nil
}