Skip to content

Commit 47668bc

Browse files
committed
stop waveform from refreshing when unpausing the initial track
1 parent 6782e8d commit 47668bc

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

backend/playbackmanager.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,8 @@ type PlaybackManager struct {
4545
wfmImageJobs [3]*WaveformImageJob
4646

4747
// whether autoplay tracks are currently being fetched/enqueued
48-
pendingAutoplay bool
48+
pendingAutoplay bool
49+
wasLoadTrackPaused bool
4950
}
5051

5152
type RemotePlaybackDevice struct {
@@ -128,11 +129,18 @@ func (p *PlaybackManager) addOnTrackChangeHook() {
128129
// we need to call handleWaveformImageSongChange to ensure the waveform image is updated
129130
// for the track that is loaded paused when starting the app
130131
p.handleWaveformImageSongChange(item)
132+
p.wasLoadTrackPaused = true
131133
}
132134
})
133135

134136
p.OnSongChange(func(item mediaprovider.MediaItem, _ *mediaprovider.Track) {
135-
p.handleWaveformImageSongChange(item)
137+
if p.wasLoadTrackPaused {
138+
// if the song change was triggered by LoadTrackPaused when starting the app,
139+
// we already called handleWaveformImageSongChange in the onBeforeSongChange hook above
140+
p.wasLoadTrackPaused = false
141+
} else {
142+
p.handleWaveformImageSongChange(item)
143+
}
136144

137145
if runtime.GOOS != "windows" {
138146
return

0 commit comments

Comments
 (0)