Emit mpris.Seeked signal on seek

This commit is contained in:
Stein Magnus Jodal 2011-07-27 01:23:39 +02:00
parent 607cdc7871
commit 2ad54204ee
2 changed files with 13 additions and 0 deletions

View File

@ -153,6 +153,12 @@ class MprisFrontend(ThreadingActor, BackendListener):
'Volume': self.mpris_object.Get(PLAYER_IFACE, 'Volume'),
}, [])
def seeked(self):
logger.debug(u'Received seeked event')
if self.mpris_object is None:
return
self.mpris_object.Seeked(PLAYER_IFACE, self.mpris_object.Get(PLAYER_IFACE, 'Position'))
class MprisObject(dbus.service.Object):
"""Implements http://www.mpris.org/2.1/spec/"""

View File

@ -57,3 +57,10 @@ class BackendEventsTest(unittest.TestCase):
self.mpris_object.PropertiesChanged.assert_called_with(
PLAYER_IFACE, {'Volume': 1.0}, [])
def test_seeked_event_causes_mpris_seeked_event(self):
self.mpris_object.Get.return_value = 31000000
self.mpris_frontend.seeked()
self.assertListEqual(self.mpris_object.Get.call_args_list, [
((PLAYER_IFACE, 'Position'), {}),
])
self.mpris_object.Seeked.assert_called_with( PLAYER_IFACE, 31000000)