mirror of
https://github.com/AynaLivePlayer/AynaLivePlayer.git
synced 2025-12-06 10:22:50 +08:00
add skip playlist
This commit is contained in:
@@ -24,6 +24,14 @@
|
||||
"en": "User Playlist",
|
||||
"zh-CN": "用户歌单"
|
||||
},
|
||||
"gui.config.basic.skip_playlist": {
|
||||
"en": "Skip Media From System Playlist",
|
||||
"zh-CN": "跳过闲置歌单"
|
||||
},
|
||||
"gui.config.basic.skip_playlist.prompt": {
|
||||
"en": "Skip",
|
||||
"zh-CN": "跳过"
|
||||
},
|
||||
"gui.config.basic.title": {
|
||||
"en": "Basic",
|
||||
"zh-CN": "基础设置"
|
||||
|
||||
@@ -7,6 +7,7 @@ type _PlayerConfig struct {
|
||||
PlaylistRandom bool
|
||||
AudioDevice string
|
||||
Volume float64
|
||||
SkipPlaylist bool
|
||||
}
|
||||
|
||||
func (c *_PlayerConfig) Name() string {
|
||||
@@ -14,10 +15,11 @@ func (c *_PlayerConfig) Name() string {
|
||||
}
|
||||
|
||||
var Player = &_PlayerConfig{
|
||||
Playlists: []string{"2382819181", "116746576", "646548465"},
|
||||
Playlists: []string{"2382819181", "4987059624", "646548465"},
|
||||
PlaylistsProvider: []string{"netease", "netease", "netease"},
|
||||
PlaylistIndex: 0,
|
||||
PlaylistRandom: true,
|
||||
AudioDevice: "auto",
|
||||
Volume: 100,
|
||||
SkipPlaylist: false,
|
||||
}
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
package controller
|
||||
|
||||
import (
|
||||
"AynaLivePlayer/config"
|
||||
"AynaLivePlayer/event"
|
||||
"AynaLivePlayer/player"
|
||||
"github.com/aynakeya/go-mpv"
|
||||
)
|
||||
|
||||
@@ -16,6 +18,11 @@ func handleMpvIdlePlayNext(property *mpv.EventProperty) {
|
||||
func handlePlaylistAdd(event *event.Event) {
|
||||
if MainPlayer.IsIdle() {
|
||||
PlayNext()
|
||||
return
|
||||
}
|
||||
if config.Player.SkipPlaylist && CurrentMedia != nil && CurrentMedia.User == player.PlaylistUser {
|
||||
PlayNext()
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -49,6 +49,13 @@ func (b *bascicConfig) CreatePanel() fyne.CanvasObject {
|
||||
outputDevice := container.NewBorder(nil, nil,
|
||||
widget.NewLabel(i18n.T("gui.config.basic.audio_device")), nil,
|
||||
deviceSel)
|
||||
b.panel = container.NewVBox(randomPlaylist, outputDevice)
|
||||
skipPlaylist := container.NewHBox(
|
||||
widget.NewLabel(i18n.T("gui.config.basic.skip_playlist")),
|
||||
widget.NewCheckWithData(
|
||||
i18n.T("gui.config.basic.skip_playlist.prompt"),
|
||||
binding.BindBool(&config.Player.SkipPlaylist),
|
||||
),
|
||||
)
|
||||
b.panel = container.NewVBox(randomPlaylist, outputDevice, skipPlaylist)
|
||||
return b.panel
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user