mopidy/mopidy/core
Stein Magnus Jodal 1d108752f6 core: Make events emitted on playback consistent (fixes #629)
This commit does not try to make the events correct/perfect with regard to
GStreamer states, end-of-stream signalling, etc. It only tries to make the
events work consistently across all the methods on the playback controller.

* play(track) while already playing has changed from:

  - playback_state_changed(old_state='playing', new_state='playing')
  - track_playback_started(track=...)

  to:

  - playback_state_changed(old_state='playing', new_state='stopped')
  - track_playback_ended(track=..., time_position=...)
  - playback_state_changed(old_state='stopped', new_state='playing')
  - track_playback_started(track=...)

* next() has changed from:

  - track_playback_ended(track=..., time_position=...)
  - playback_state_changed(old_state='playing', new_state='stopped')
  - track_playback_ended(track=..., time_position=0)
  - playback_state_changed(old_state='stopped', new_state='playing')
  - track_playback_started(track=...)

  to same as play() above.

* previous() has changed in the same way as next().

* on_end_of_track() has changed from:

  - track_playback_ended(track=..., time_position=...)
  - playback_state_changed(old_state='playing', new_state='playing')
  - track_playback_started(track=...)

  to same as play() above.

* stop() has reordered its events from:

  - track_playback_ended(track=..., time_position=...)
  - playback_state_changed(old_state='playing', new_state='stopped')

  to:

  - playback_state_changed(old_state='playing', new_state='stopped')
  - track_playback_ended(track=..., time_position=...)
2014-01-14 01:18:39 +01:00
..
__init__.py Rename 'stored playlists' to 'playlists' 2012-11-14 09:23:19 +01:00
actor.py backend: Update backend API imports 2014-01-11 18:20:45 +01:00
library.py Fix typos 2014-01-10 00:04:39 +01:00
listener.py listeners: Make listeners async 2013-11-26 15:10:48 +01:00
playback.py core: Make events emitted on playback consistent (fixes #629) 2014-01-14 01:18:39 +01:00
playlists.py core: Refactor core Backends helper 2013-11-27 00:04:51 +01:00
tracklist.py log: Use loggers named after __name__ 2014-01-01 13:31:20 +01:00