core: Return pending position during active seek.
This covers over that audio will fail query position while a seek is in progress. It also means that instead of returning zero we at least return something which is much closer to the time that we will soon end up playing from.
This commit is contained in:
parent
eeb1f91ed1
commit
9f23757cc3
@ -131,6 +131,8 @@ class PlaybackController(object):
|
||||
|
||||
def get_time_position(self):
|
||||
"""Get time position in milliseconds."""
|
||||
if self._pending_position is not None:
|
||||
return self._pending_position
|
||||
backend = self._get_backend(self.get_current_tl_track())
|
||||
if backend:
|
||||
return backend.playback.get_time_position().get()
|
||||
|
||||
@ -855,7 +855,6 @@ class BackendSelectionTest(unittest.TestCase):
|
||||
self.core.playback.play(self.tl_tracks[0])
|
||||
self.trigger_stream_changed()
|
||||
|
||||
self.core.playback.seek(10000)
|
||||
self.core.playback.time_position
|
||||
|
||||
self.playback1.get_time_position.assert_called_once_with()
|
||||
@ -865,7 +864,6 @@ class BackendSelectionTest(unittest.TestCase):
|
||||
self.core.playback.play(self.tl_tracks[1])
|
||||
self.trigger_stream_changed()
|
||||
|
||||
self.core.playback.seek(10000)
|
||||
self.core.playback.time_position
|
||||
|
||||
self.assertFalse(self.playback1.get_time_position.called)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user