Send old and new state to playback_state_changed listeners
This commit is contained in:
parent
b3f3cfe2a0
commit
28e5ed8b2e
@ -290,7 +290,7 @@ class PlaybackController(object):
|
||||
(old_state, self._state) = (self.state, new_state)
|
||||
logger.debug(u'Changing state: %s -> %s', old_state, new_state)
|
||||
|
||||
self._trigger_playback_state_changed()
|
||||
self._trigger_playback_state_changed(old_state, new_state)
|
||||
|
||||
# FIXME play_time stuff assumes backend does not have a better way of
|
||||
# handeling this stuff :/
|
||||
@ -544,9 +544,10 @@ class PlaybackController(object):
|
||||
track=self.current_track,
|
||||
time_position=self.time_position)
|
||||
|
||||
def _trigger_playback_state_changed(self):
|
||||
def _trigger_playback_state_changed(self, old_state, new_state):
|
||||
logger.debug(u'Triggering playback state change event')
|
||||
BackendListener.send('playback_state_changed')
|
||||
BackendListener.send('playback_state_changed',
|
||||
old_state=old_state, new_state=new_state)
|
||||
|
||||
def _trigger_options_changed(self):
|
||||
logger.debug(u'Triggering options changed event')
|
||||
|
||||
@ -51,7 +51,7 @@ class MpdFrontend(actor.ThreadingActor, listeners.BackendListener):
|
||||
'kwargs': {},
|
||||
}, target_class=MpdSession)
|
||||
|
||||
def playback_state_changed(self):
|
||||
def playback_state_changed(self, old_state, new_state):
|
||||
self.send_idle('player')
|
||||
|
||||
def playlist_changed(self):
|
||||
|
||||
@ -74,11 +74,16 @@ class BackendListener(object):
|
||||
"""
|
||||
pass
|
||||
|
||||
def playback_state_changed(self):
|
||||
def playback_state_changed(self, old_state, new_state):
|
||||
"""
|
||||
Called whenever playback state is changed.
|
||||
|
||||
*MAY* be implemented by actor.
|
||||
|
||||
:param old_state: the state before the change
|
||||
:type old_state: string from :class:`mopidy.core.PlaybackState` field
|
||||
:param new_state: the state after the change
|
||||
:type new_state: string from :class:`mopidy.core.PlaybackState` field
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
from mopidy.core import PlaybackState
|
||||
from mopidy.listeners import BackendListener
|
||||
from mopidy.models import Track
|
||||
|
||||
@ -21,7 +22,8 @@ class BackendListenerTest(unittest.TestCase):
|
||||
self.listener.track_playback_ended(Track(), 0)
|
||||
|
||||
def test_listener_has_default_impl_for_playback_state_changed(self):
|
||||
self.listener.playback_state_changed()
|
||||
self.listener.playback_state_changed(
|
||||
PlaybackState.STOPPED, PlaybackState.PLAYING)
|
||||
|
||||
def test_listener_has_default_impl_for_playlist_changed(self):
|
||||
self.listener.playlist_changed()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user