Made play/next/prev in Ubuntu's Sound Menu work by wiring the MPRIS methods to their MPD frontend equivalents #thisisatemporaryhacktoprovethatitworks #ipromise
This commit is contained in:
parent
66cc9d8c6f
commit
208435cd79
@ -245,6 +245,13 @@ class MprisObject(dbus.service.Object):
|
|||||||
# TODO call playback.next(), keep playback.state unchanged
|
# TODO call playback.next(), keep playback.state unchanged
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
# XXX Proof of concept only. Throw away, write tests, reimplement:
|
||||||
|
self.core_queue.put({
|
||||||
|
'to': 'frontend',
|
||||||
|
'command': 'mpd_request',
|
||||||
|
'request': 'next',
|
||||||
|
})
|
||||||
|
|
||||||
@dbus.service.method(dbus_interface=player_interface)
|
@dbus.service.method(dbus_interface=player_interface)
|
||||||
def OpenUri(self, uri):
|
def OpenUri(self, uri):
|
||||||
logger.debug(u'%s.OpenUri called', self.player_interface)
|
logger.debug(u'%s.OpenUri called', self.player_interface)
|
||||||
@ -273,17 +280,31 @@ class MprisObject(dbus.service.Object):
|
|||||||
@dbus.service.method(dbus_interface=player_interface)
|
@dbus.service.method(dbus_interface=player_interface)
|
||||||
def PlayPause(self):
|
def PlayPause(self):
|
||||||
logger.debug(u'%s.PlayPause called', self.player_interface)
|
logger.debug(u'%s.PlayPause called', self.player_interface)
|
||||||
|
|
||||||
# TODO Pseudo code:
|
# TODO Pseudo code:
|
||||||
# if playback.state == playback.PLAYING: playback.pause()
|
# if playback.state == playback.PLAYING: playback.pause()
|
||||||
# elif playback.state == playback.PAUSED: playback.resume()
|
# elif playback.state == playback.PAUSED: playback.resume()
|
||||||
# elif playback.state == playback.STOPPED: playback.play()
|
# elif playback.state == playback.STOPPED: playback.play()
|
||||||
pass
|
|
||||||
|
# XXX Proof of concept only. Throw away, write tests, reimplement:
|
||||||
|
self.core_queue.put({
|
||||||
|
'to': 'frontend',
|
||||||
|
'command': 'mpd_request',
|
||||||
|
'request': 'play',
|
||||||
|
})
|
||||||
|
|
||||||
@dbus.service.method(dbus_interface=player_interface)
|
@dbus.service.method(dbus_interface=player_interface)
|
||||||
def Previous(self):
|
def Previous(self):
|
||||||
logger.debug(u'%s.Previous called', self.player_interface)
|
logger.debug(u'%s.Previous called', self.player_interface)
|
||||||
|
|
||||||
# TODO call playback.previous(), keep playback.state unchanged
|
# TODO call playback.previous(), keep playback.state unchanged
|
||||||
pass
|
|
||||||
|
# XXX Proof of concept only. Throw away, write tests, reimplement:
|
||||||
|
self.core_queue.put({
|
||||||
|
'to': 'frontend',
|
||||||
|
'command': 'mpd_request',
|
||||||
|
'request': 'previous',
|
||||||
|
})
|
||||||
|
|
||||||
@dbus.service.method(dbus_interface=player_interface)
|
@dbus.service.method(dbus_interface=player_interface)
|
||||||
def Seek(self, offset):
|
def Seek(self, offset):
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user