load saved play position on startup

This commit is contained in:
Drew Weymouth
2024-01-07 17:14:57 -08:00
parent fe41781df4
commit 793b570999
2 changed files with 20 additions and 4 deletions
+15 -1
View File
@@ -317,7 +317,21 @@ func (a *App) LoadSavedPlayQueue() error {
if err != nil {
return err
}
return a.PlaybackManager.LoadTracks(queue.Tracks, false, false)
if len(queue.Tracks) == 0 {
return nil
}
if err := a.PlaybackManager.LoadTracks(queue.Tracks, false, false); err != nil {
return err
}
if queue.TrackIndex >= 0 {
// TODO: This isn't ideal but doesn't seem to cause an audible play-for-a-split-second artifact
a.PlaybackManager.PlayTrackAt(queue.TrackIndex)
a.PlaybackManager.Pause()
time.Sleep(50 * time.Millisecond) // MPV seek fails if run immediately after
a.PlaybackManager.SeekSeconds(queue.TimePos)
}
return nil
}
func (a *App) SaveConfigFile() {
+2
View File
@@ -142,9 +142,11 @@ func (m *MainWindow) RunOnServerConnectedTasks(app *backend.App, displayAppName
m.BottomPanel.NowPlaying.DisableRating = !canRate
if app.Config.Application.SavePlayQueue {
go func() {
if err := app.LoadSavedPlayQueue(); err != nil {
log.Printf("failed to load saved play queue: %s", err.Error())
}
}()
}
// check if launching new version, else if found available update on startup