save shuffle state in config
This commit is contained in:
@@ -123,6 +123,7 @@ type NowPlayingPageConfig struct {
|
|||||||
|
|
||||||
type PlaybackConfig struct {
|
type PlaybackConfig struct {
|
||||||
Autoplay bool
|
Autoplay bool
|
||||||
|
Shuffle bool
|
||||||
RepeatMode string
|
RepeatMode string
|
||||||
SkipOneStarWhenShuffling bool
|
SkipOneStarWhenShuffling bool
|
||||||
SkipKeywordWhenShuffling string
|
SkipKeywordWhenShuffling string
|
||||||
@@ -259,6 +260,7 @@ func DefaultConfig(appVersionTag string) *Config {
|
|||||||
},
|
},
|
||||||
Playback: PlaybackConfig{
|
Playback: PlaybackConfig{
|
||||||
Autoplay: false,
|
Autoplay: false,
|
||||||
|
Shuffle: false,
|
||||||
RepeatMode: "None",
|
RepeatMode: "None",
|
||||||
UseWaveformSeekbar: true,
|
UseWaveformSeekbar: true,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -355,10 +355,6 @@ func (p *playbackEngine) SetShuffle(shuffle bool) {
|
|||||||
p.invokeNoArgCallbacks(p.onQueueChange)
|
p.invokeNoArgCallbacks(p.onQueueChange)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *playbackEngine) GetShuffle() bool {
|
|
||||||
return p.shuffle
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *playbackEngine) PlaybackStatus() PlaybackStatus {
|
func (p *playbackEngine) PlaybackStatus() PlaybackStatus {
|
||||||
stat := p.pendingPlayerChangeStatus
|
stat := p.pendingPlayerChangeStatus
|
||||||
if !p.pendingPlayerChange {
|
if !p.pendingPlayerChange {
|
||||||
|
|||||||
@@ -368,8 +368,8 @@ func (p *PlaybackManager) LoadAlbum(albumID string, insertQueueMode InsertQueueM
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *PlaybackManager) GetShuffle() bool {
|
func (p *PlaybackManager) IsShuffle() bool {
|
||||||
return p.engine.GetShuffle()
|
return p.cfg.Shuffle
|
||||||
}
|
}
|
||||||
|
|
||||||
// Loads the specified playlist into the play queue.
|
// Loads the specified playlist into the play queue.
|
||||||
@@ -639,6 +639,8 @@ func (p *PlaybackManager) SetAutoplay(autoplay bool) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *PlaybackManager) SetShuffle(shuffle bool) {
|
func (p *PlaybackManager) SetShuffle(shuffle bool) {
|
||||||
|
p.cfg.Shuffle = shuffle
|
||||||
|
fmt.Println("Setting shuffle in config")
|
||||||
p.engine.SetShuffle(shuffle)
|
p.engine.SetShuffle(shuffle)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -101,7 +101,7 @@ func NewBottomPanel(pm *backend.PlaybackManager, im *backend.ImageManager, contr
|
|||||||
pm.SeekFraction(f)
|
pm.SeekFraction(f)
|
||||||
})
|
})
|
||||||
|
|
||||||
bp.AuxControls = widgets.NewAuxControls(pm.Volume(), pm.GetLoopMode(), pm.IsAutoplay())
|
bp.AuxControls = widgets.NewAuxControls(pm.Volume(), pm.GetLoopMode(), pm.IsAutoplay(), pm.IsShuffle())
|
||||||
pm.OnLoopModeChange(func(lm backend.LoopMode) {
|
pm.OnLoopModeChange(func(lm backend.LoopMode) {
|
||||||
fyne.Do(func() { bp.AuxControls.SetLoopMode(lm) })
|
fyne.Do(func() { bp.AuxControls.SetLoopMode(lm) })
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ type AuxControls struct {
|
|||||||
container *fyne.Container
|
container *fyne.Container
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewAuxControls(initialVolume int, initialLoopMode backend.LoopMode, initialAutoplay bool) *AuxControls {
|
func NewAuxControls(initialVolume int, initialLoopMode backend.LoopMode, initialAutoplay bool, initialShuffle bool) *AuxControls {
|
||||||
a := &AuxControls{
|
a := &AuxControls{
|
||||||
VolumeControl: NewVolumeControl(initialVolume),
|
VolumeControl: NewVolumeControl(initialVolume),
|
||||||
shuffle: NewIconButton(myTheme.ShuffleIcon, nil),
|
shuffle: NewIconButton(myTheme.ShuffleIcon, nil),
|
||||||
@@ -44,6 +44,7 @@ func NewAuxControls(initialVolume int, initialLoopMode backend.LoopMode, initial
|
|||||||
showQueue: NewIconButton(myTheme.PlayQueueIcon, nil),
|
showQueue: NewIconButton(myTheme.PlayQueueIcon, nil),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
a.shuffle.Highlighted = initialShuffle
|
||||||
a.shuffle.IconSize = IconButtonSizeSmaller
|
a.shuffle.IconSize = IconButtonSizeSmaller
|
||||||
a.shuffle.SetToolTip(lang.L("Shuffle"))
|
a.shuffle.SetToolTip(lang.L("Shuffle"))
|
||||||
a.shuffle.OnTapped = func() {
|
a.shuffle.OnTapped = func() {
|
||||||
|
|||||||
Reference in New Issue
Block a user