mirror of
https://github.com/issadarkthing/gomu.git
synced 2025-04-26 13:49:21 +08:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
eea825e9d3
5
go.mod
5
go.mod
@ -13,7 +13,7 @@ require (
|
|||||||
github.com/asmcos/requests v0.0.0-20210118082303-cb8f46dd3767
|
github.com/asmcos/requests v0.0.0-20210118082303-cb8f46dd3767
|
||||||
github.com/bogem/id3v2 v1.2.0
|
github.com/bogem/id3v2 v1.2.0
|
||||||
github.com/faiface/beep v1.0.2
|
github.com/faiface/beep v1.0.2
|
||||||
github.com/gdamore/tcell/v2 v2.1.0
|
github.com/gdamore/tcell/v2 v2.2.0
|
||||||
github.com/gobwas/glob v0.2.3 // indirect
|
github.com/gobwas/glob v0.2.3 // indirect
|
||||||
github.com/gocolly/colly v1.2.0
|
github.com/gocolly/colly v1.2.0
|
||||||
github.com/hajimehoshi/go-mp3 v0.3.1 // indirect
|
github.com/hajimehoshi/go-mp3 v0.3.1 // indirect
|
||||||
@ -23,7 +23,7 @@ require (
|
|||||||
github.com/logrusorgru/aurora v2.0.3+incompatible // indirect
|
github.com/logrusorgru/aurora v2.0.3+incompatible // indirect
|
||||||
github.com/mattn/anko v0.1.8
|
github.com/mattn/anko v0.1.8
|
||||||
github.com/pkg/errors v0.9.1 // indirect
|
github.com/pkg/errors v0.9.1 // indirect
|
||||||
github.com/rivo/tview v0.0.0-20210125085121-dbc1f32bb1d0
|
github.com/rivo/tview v0.0.0-20210312174852-ae9464cc3598
|
||||||
github.com/sahilm/fuzzy v0.1.0
|
github.com/sahilm/fuzzy v0.1.0
|
||||||
github.com/saintfish/chardet v0.0.0-20120816061221-3af4cd4741ca // indirect
|
github.com/saintfish/chardet v0.0.0-20120816061221-3af4cd4741ca // indirect
|
||||||
github.com/stretchr/testify v1.7.0
|
github.com/stretchr/testify v1.7.0
|
||||||
@ -33,5 +33,6 @@ require (
|
|||||||
golang.org/x/exp v0.0.0-20201229011636-eab1b5eb1a03 // indirect
|
golang.org/x/exp v0.0.0-20201229011636-eab1b5eb1a03 // indirect
|
||||||
golang.org/x/image v0.0.0-20201208152932-35266b937fa6 // indirect
|
golang.org/x/image v0.0.0-20201208152932-35266b937fa6 // indirect
|
||||||
golang.org/x/net v0.0.0-20210119194325-5f4716e94777 // indirect
|
golang.org/x/net v0.0.0-20210119194325-5f4716e94777 // indirect
|
||||||
|
golang.org/x/sys v0.0.0-20210313202042-bd2e13477e9c // indirect
|
||||||
google.golang.org/appengine v1.6.7 // indirect
|
google.golang.org/appengine v1.6.7 // indirect
|
||||||
)
|
)
|
||||||
|
12
go.sum
12
go.sum
@ -26,6 +26,8 @@ github.com/gdamore/tcell v1.4.0/go.mod h1:vxEiSDZdW3L+Uhjii9c3375IlDmR05bzxY404Z
|
|||||||
github.com/gdamore/tcell/v2 v2.0.1-0.20201017141208-acf90d56d591/go.mod h1:vSVL/GV5mCSlPC6thFP5kfOFdM9MGZcalipmpTxTgQA=
|
github.com/gdamore/tcell/v2 v2.0.1-0.20201017141208-acf90d56d591/go.mod h1:vSVL/GV5mCSlPC6thFP5kfOFdM9MGZcalipmpTxTgQA=
|
||||||
github.com/gdamore/tcell/v2 v2.1.0 h1:UnSmozHgBkQi2PGsFr+rpdXuAPRRucMegpQp3Z3kDro=
|
github.com/gdamore/tcell/v2 v2.1.0 h1:UnSmozHgBkQi2PGsFr+rpdXuAPRRucMegpQp3Z3kDro=
|
||||||
github.com/gdamore/tcell/v2 v2.1.0/go.mod h1:vSVL/GV5mCSlPC6thFP5kfOFdM9MGZcalipmpTxTgQA=
|
github.com/gdamore/tcell/v2 v2.1.0/go.mod h1:vSVL/GV5mCSlPC6thFP5kfOFdM9MGZcalipmpTxTgQA=
|
||||||
|
github.com/gdamore/tcell/v2 v2.2.0 h1:vSyEgKwraXPSOkvCk7IwOSyX+Pv3V2cV9CikJMXg4U4=
|
||||||
|
github.com/gdamore/tcell/v2 v2.2.0/go.mod h1:cTTuF84Dlj/RqmaCIV5p4w8uG1zWdk0SF6oBpwHp4fU=
|
||||||
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8=
|
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8=
|
||||||
github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
|
github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
|
||||||
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
|
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
|
||||||
@ -59,6 +61,8 @@ github.com/logrusorgru/aurora v2.0.3+incompatible/go.mod h1:7rIyQOR62GCctdiQpZ/z
|
|||||||
github.com/lucasb-eyer/go-colorful v0.0.0-20181028223441-12d3b2882a08/go.mod h1:NXg0ArsFk0Y01623LgUqoqcouGDB+PwCCQlrwrG6xJ4=
|
github.com/lucasb-eyer/go-colorful v0.0.0-20181028223441-12d3b2882a08/go.mod h1:NXg0ArsFk0Y01623LgUqoqcouGDB+PwCCQlrwrG6xJ4=
|
||||||
github.com/lucasb-eyer/go-colorful v1.0.3 h1:QIbQXiugsb+q10B+MI+7DI1oQLdmnep86tWFlaaUAac=
|
github.com/lucasb-eyer/go-colorful v1.0.3 h1:QIbQXiugsb+q10B+MI+7DI1oQLdmnep86tWFlaaUAac=
|
||||||
github.com/lucasb-eyer/go-colorful v1.0.3/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
|
github.com/lucasb-eyer/go-colorful v1.0.3/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
|
||||||
|
github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY=
|
||||||
|
github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
|
||||||
github.com/mattn/anko v0.1.8 h1:wDGM0Rwgbzhk1h8xE6qAR4n+PO/9clzf3tLGtrwsqJg=
|
github.com/mattn/anko v0.1.8 h1:wDGM0Rwgbzhk1h8xE6qAR4n+PO/9clzf3tLGtrwsqJg=
|
||||||
github.com/mattn/anko v0.1.8/go.mod h1:C5D2zw4NIv/sB2SrQ3qs5wqPw0wKiA2GZqexy4ctNH0=
|
github.com/mattn/anko v0.1.8/go.mod h1:C5D2zw4NIv/sB2SrQ3qs5wqPw0wKiA2GZqexy4ctNH0=
|
||||||
github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU=
|
github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU=
|
||||||
@ -73,6 +77,8 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb
|
|||||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||||
github.com/rivo/tview v0.0.0-20210125085121-dbc1f32bb1d0 h1:WCfp+Jq9Mx156zIf9X6Frd6F19rf7wIRlm54UPxUfcU=
|
github.com/rivo/tview v0.0.0-20210125085121-dbc1f32bb1d0 h1:WCfp+Jq9Mx156zIf9X6Frd6F19rf7wIRlm54UPxUfcU=
|
||||||
github.com/rivo/tview v0.0.0-20210125085121-dbc1f32bb1d0/go.mod h1:1QW7hX7RQzOqyGgx8O64bRPQBrFtPflioPPX5gFPV3A=
|
github.com/rivo/tview v0.0.0-20210125085121-dbc1f32bb1d0/go.mod h1:1QW7hX7RQzOqyGgx8O64bRPQBrFtPflioPPX5gFPV3A=
|
||||||
|
github.com/rivo/tview v0.0.0-20210312174852-ae9464cc3598 h1:AbRrGXhagPRDItERv7nauBUUPi7Ma3IGIj9FqkQKW6k=
|
||||||
|
github.com/rivo/tview v0.0.0-20210312174852-ae9464cc3598/go.mod h1:VzCN9WX13RF88iH2CaGkmdHOlsy1ZZQcTmNwROqC+LI=
|
||||||
github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
||||||
github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY=
|
github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY=
|
||||||
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
||||||
@ -143,7 +149,13 @@ golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7w
|
|||||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20210113181707-4bcb84eeeb78 h1:nVuTkr9L6Bq62qpUqKo/RnZCFfzDBL0bYo6w9OJUqZY=
|
golang.org/x/sys v0.0.0-20210113181707-4bcb84eeeb78 h1:nVuTkr9L6Bq62qpUqKo/RnZCFfzDBL0bYo6w9OJUqZY=
|
||||||
golang.org/x/sys v0.0.0-20210113181707-4bcb84eeeb78/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20210113181707-4bcb84eeeb78/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
|
golang.org/x/sys v0.0.0-20210309074719-68d13333faf2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
|
golang.org/x/sys v0.0.0-20210313202042-bd2e13477e9c h1:coiPEfMv+ThsjULRDygLrJVlNE1gDdL2g65s0LhV2os=
|
||||||
|
golang.org/x/sys v0.0.0-20210313202042-bd2e13477e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||||
|
golang.org/x/term v0.0.0-20201210144234-2321bbc49cbf/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||||
|
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d h1:SZxvLBoTP5yHO3Frd4z4vrF+DBX9vMVanchswa69toE=
|
||||||
|
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||||
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
||||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||||
|
@ -36,8 +36,11 @@ func (p *PlayingBar) help() []string {
|
|||||||
func newPlayingBar() *PlayingBar {
|
func newPlayingBar() *PlayingBar {
|
||||||
|
|
||||||
textView := tview.NewTextView().SetTextAlign(tview.AlignCenter)
|
textView := tview.NewTextView().SetTextAlign(tview.AlignCenter)
|
||||||
|
textView.SetBackgroundColor(gomu.colors.background)
|
||||||
|
|
||||||
frame := tview.NewFrame(textView).SetBorders(1, 1, 1, 1, 1, 1)
|
frame := tview.NewFrame(textView).SetBorders(1, 1, 1, 1, 1, 1)
|
||||||
frame.SetBorder(true).SetTitle(" Now Playing ")
|
frame.SetBorder(true).SetTitle(" Now Playing ")
|
||||||
|
frame.SetBackgroundColor(gomu.colors.background)
|
||||||
|
|
||||||
p := &PlayingBar{
|
p := &PlayingBar{
|
||||||
Frame: frame,
|
Frame: frame,
|
||||||
|
@ -115,6 +115,7 @@ func newPlaylist(args Args) *Playlist {
|
|||||||
SetColor(gomu.colors.accent)
|
SetColor(gomu.colors.accent)
|
||||||
|
|
||||||
tree := tview.NewTreeView().SetRoot(root)
|
tree := tview.NewTreeView().SetRoot(root)
|
||||||
|
tree.SetBackgroundColor(gomu.colors.background)
|
||||||
|
|
||||||
playlist := &Playlist{
|
playlist := &Playlist{
|
||||||
TreeView: tree,
|
TreeView: tree,
|
||||||
|
9
popup.go
9
popup.go
@ -411,6 +411,7 @@ func searchPopup(title string, stringsToMatch []string, handler func(selected st
|
|||||||
list := tview.NewList().ShowSecondaryText(false)
|
list := tview.NewList().ShowSecondaryText(false)
|
||||||
list.SetSelectedBackgroundColor(gomu.colors.accent)
|
list.SetSelectedBackgroundColor(gomu.colors.accent)
|
||||||
list.SetHighlightFullLine(true)
|
list.SetHighlightFullLine(true)
|
||||||
|
list.SetBackgroundColor(gomu.colors.popup)
|
||||||
|
|
||||||
for _, v := range stringsToMatch {
|
for _, v := range stringsToMatch {
|
||||||
list.AddItem(v, v, 0, nil)
|
list.AddItem(v, v, 0, nil)
|
||||||
@ -501,11 +502,13 @@ func searchPopup(title string, stringsToMatch []string, handler func(selected st
|
|||||||
AddItem(input, 2, 1, true).
|
AddItem(input, 2, 1, true).
|
||||||
AddItem(list, 0, 1, false)
|
AddItem(list, 0, 1, false)
|
||||||
|
|
||||||
popup.SetBorder(true).
|
popupBox := tview.NewBox().SetBorder(true).
|
||||||
SetBackgroundColor(gomu.colors.popup).
|
SetBackgroundColor(gomu.colors.popup).
|
||||||
SetBorderPadding(1, 1, 2, 2).
|
SetBorderPadding(1, 1, 2, 2).
|
||||||
SetTitle(" " + title + " ")
|
SetTitle(" " + title + " ")
|
||||||
|
|
||||||
|
popup.Box = popupBox
|
||||||
|
|
||||||
gomu.pages.AddPage("search-input-popup", center(popup, 70, 40), true, true)
|
gomu.pages.AddPage("search-input-popup", center(popup, 70, 40), true, true)
|
||||||
gomu.popups.push(popup)
|
gomu.popups.push(popup)
|
||||||
}
|
}
|
||||||
@ -709,12 +712,14 @@ func replPopup() {
|
|||||||
AddItem(input, 3, 1, true).
|
AddItem(input, 3, 1, true).
|
||||||
AddItem(textview, 0, 1, false)
|
AddItem(textview, 0, 1, false)
|
||||||
|
|
||||||
flex.
|
flexBox := tview.NewBox().
|
||||||
SetBackgroundColor(gomu.colors.popup).
|
SetBackgroundColor(gomu.colors.popup).
|
||||||
SetBorder(true).
|
SetBorder(true).
|
||||||
SetBorderPadding(1, 1, 2, 2).
|
SetBorderPadding(1, 1, 2, 2).
|
||||||
SetTitle(" REPL ")
|
SetTitle(" REPL ")
|
||||||
|
|
||||||
|
flex.Box = flexBox
|
||||||
|
|
||||||
gomu.pages.AddPage(popupId, center(flex, 90, 30), true, true)
|
gomu.pages.AddPage(popupId, center(flex, 90, 30), true, true)
|
||||||
gomu.popups.push(flex)
|
gomu.popups.push(flex)
|
||||||
}
|
}
|
||||||
|
2
queue.go
2
queue.go
@ -361,6 +361,8 @@ func newQueue() *Queue {
|
|||||||
list := tview.NewList().
|
list := tview.NewList().
|
||||||
ShowSecondaryText(false)
|
ShowSecondaryText(false)
|
||||||
|
|
||||||
|
list.SetBackgroundColor(gomu.colors.background)
|
||||||
|
|
||||||
queue := &Queue{
|
queue := &Queue{
|
||||||
List: list,
|
List: list,
|
||||||
savedQueuePath: cacheQueuePath,
|
savedQueuePath: cacheQueuePath,
|
||||||
|
2
start.go
2
start.go
@ -317,7 +317,7 @@ func start(application *tview.Application, args Args) {
|
|||||||
tview.Borders.TopRightFocus = tview.Borders.TopRight
|
tview.Borders.TopRightFocus = tview.Borders.TopRight
|
||||||
tview.Borders.BottomLeftFocus = tview.Borders.BottomLeft
|
tview.Borders.BottomLeftFocus = tview.Borders.BottomLeft
|
||||||
tview.Borders.BottomRightFocus = tview.Borders.BottomRight
|
tview.Borders.BottomRightFocus = tview.Borders.BottomRight
|
||||||
tview.Styles.PrimitiveBackgroundColor = gomu.colors.background
|
tview.Styles.PrimitiveBackgroundColor = gomu.colors.popup
|
||||||
|
|
||||||
gomu.initPanels(application, args)
|
gomu.initPanels(application, args)
|
||||||
|
|
||||||
|
53
tageditor.go
53
tageditor.go
@ -45,21 +45,22 @@ func tagPopup(node *AudioFile) (err error) {
|
|||||||
leftGrid *tview.Grid = tview.NewGrid()
|
leftGrid *tview.Grid = tview.NewGrid()
|
||||||
rightFlex *tview.Flex = tview.NewFlex()
|
rightFlex *tview.Flex = tview.NewFlex()
|
||||||
)
|
)
|
||||||
|
|
||||||
artistInputField.SetLabel("Artist: ").
|
artistInputField.SetLabel("Artist: ").
|
||||||
SetFieldWidth(20).
|
SetFieldWidth(20).
|
||||||
SetText(tag.Artist()).
|
SetText(tag.Artist()).
|
||||||
SetFieldBackgroundColor(gomu.colors.popup).
|
SetFieldBackgroundColor(gomu.colors.popup)
|
||||||
SetBackgroundColor(gomu.colors.background)
|
|
||||||
titleInputField.SetLabel("Title: ").
|
titleInputField.SetLabel("Title: ").
|
||||||
SetFieldWidth(20).
|
SetFieldWidth(20).
|
||||||
SetText(tag.Title()).
|
SetText(tag.Title()).
|
||||||
SetFieldBackgroundColor(gomu.colors.popup).
|
SetFieldBackgroundColor(gomu.colors.popup)
|
||||||
SetBackgroundColor(gomu.colors.background)
|
|
||||||
albumInputField.SetLabel("Album: ").
|
albumInputField.SetLabel("Album: ").
|
||||||
SetFieldWidth(20).
|
SetFieldWidth(20).
|
||||||
SetText(tag.Album()).
|
SetText(tag.Album()).
|
||||||
SetFieldBackgroundColor(gomu.colors.popup).
|
SetFieldBackgroundColor(gomu.colors.popup)
|
||||||
SetBackgroundColor(gomu.colors.background)
|
|
||||||
getTagButton.SetSelectedFunc(func() {
|
getTagButton.SetSelectedFunc(func() {
|
||||||
var titles []string
|
var titles []string
|
||||||
audioFile := node
|
audioFile := node
|
||||||
@ -107,9 +108,12 @@ func tagPopup(node *AudioFile) (err error) {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}).
|
}).
|
||||||
|
SetBackgroundColorActivated(gomu.colors.popup).
|
||||||
|
SetLabelColorActivated(gomu.colors.accent).
|
||||||
SetBorder(true).
|
SetBorder(true).
|
||||||
SetBackgroundColor(gomu.colors.background).
|
SetBackgroundColor(gomu.colors.popup).
|
||||||
SetTitleColor(gomu.colors.accent)
|
SetTitleColor(gomu.colors.accent)
|
||||||
|
|
||||||
saveTagButton.SetSelectedFunc(func() {
|
saveTagButton.SetSelectedFunc(func() {
|
||||||
tag, err = id3v2.Open(node.path, id3v2.Options{Parse: true})
|
tag, err = id3v2.Open(node.path, id3v2.Options{Parse: true})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -126,13 +130,15 @@ func tagPopup(node *AudioFile) (err error) {
|
|||||||
defaultTimedPopup(" Success ", "Tag update successfully")
|
defaultTimedPopup(" Success ", "Tag update successfully")
|
||||||
}
|
}
|
||||||
}).
|
}).
|
||||||
|
SetBackgroundColorActivated(gomu.colors.popup).
|
||||||
|
SetLabelColorActivated(gomu.colors.accent).
|
||||||
SetBorder(true).
|
SetBorder(true).
|
||||||
SetBackgroundColor(gomu.colors.background).
|
SetBackgroundColor(gomu.colors.popup).
|
||||||
SetTitleColor(gomu.colors.foreground)
|
SetTitleColor(gomu.colors.foreground)
|
||||||
|
|
||||||
lyricDropDown.SetOptions(options, nil).
|
lyricDropDown.SetOptions(options, nil).
|
||||||
SetCurrentOption(0).
|
SetCurrentOption(0).
|
||||||
SetFieldBackgroundColor(gomu.colors.background).
|
SetFieldBackgroundColor(gomu.colors.popup).
|
||||||
SetFieldTextColor(gomu.colors.accent).
|
SetFieldTextColor(gomu.colors.accent).
|
||||||
SetPrefixTextColor(gomu.colors.accent).
|
SetPrefixTextColor(gomu.colors.accent).
|
||||||
SetSelectedFunc(func(text string, _ int) {
|
SetSelectedFunc(func(text string, _ int) {
|
||||||
@ -187,18 +193,21 @@ func tagPopup(node *AudioFile) (err error) {
|
|||||||
infoPopup("No lyric embeded.")
|
infoPopup("No lyric embeded.")
|
||||||
}
|
}
|
||||||
}).
|
}).
|
||||||
|
SetBackgroundColorActivated(gomu.colors.popup).
|
||||||
|
SetLabelColorActivated(gomu.colors.accent).
|
||||||
SetBorder(true).
|
SetBorder(true).
|
||||||
SetBackgroundColor(gomu.colors.background).
|
SetBackgroundColor(gomu.colors.popup).
|
||||||
SetTitleColor(gomu.colors.accent)
|
SetTitleColor(gomu.colors.accent)
|
||||||
|
|
||||||
getLyricDropDownOptions := []string{"en", "zh-CN"}
|
getLyricDropDownOptions := []string{"en", "zh-CN"}
|
||||||
getLyricDropDown.SetOptions(getLyricDropDownOptions, nil).
|
getLyricDropDown.SetOptions(getLyricDropDownOptions, nil).
|
||||||
SetCurrentOption(0).
|
SetCurrentOption(0).
|
||||||
SetFieldBackgroundColor(gomu.colors.background).
|
SetFieldBackgroundColor(gomu.colors.popup).
|
||||||
SetFieldTextColor(gomu.colors.accent).
|
SetFieldTextColor(gomu.colors.accent).
|
||||||
SetPrefixTextColor(gomu.colors.accent).
|
SetPrefixTextColor(gomu.colors.accent).
|
||||||
SetLabel("Fetch Lyrics: ")
|
SetLabel("Fetch Lyrics: ").
|
||||||
getLyricDropDown.SetBackgroundColor(gomu.colors.popup)
|
SetBackgroundColor(gomu.colors.popup)
|
||||||
|
|
||||||
langLyricFromConfig := gomu.anko.GetString("General.lang_lyric")
|
langLyricFromConfig := gomu.anko.GetString("General.lang_lyric")
|
||||||
if strings.Contains(langLyricFromConfig, "zh-CN") {
|
if strings.Contains(langLyricFromConfig, "zh-CN") {
|
||||||
getLyricDropDown.SetCurrentOption(1)
|
getLyricDropDown.SetCurrentOption(1)
|
||||||
@ -295,9 +304,11 @@ func tagPopup(node *AudioFile) (err error) {
|
|||||||
gomu.app.Draw()
|
gomu.app.Draw()
|
||||||
}
|
}
|
||||||
}).
|
}).
|
||||||
|
SetBackgroundColorActivated(gomu.colors.popup).
|
||||||
|
SetLabelColorActivated(gomu.colors.accent).
|
||||||
SetBorder(true).
|
SetBorder(true).
|
||||||
SetBackgroundColor(gomu.colors.background).
|
SetTitleColor(gomu.colors.accent).
|
||||||
SetTitleColor(gomu.colors.accent)
|
SetBackgroundColor(gomu.colors.popup)
|
||||||
|
|
||||||
var lyricText string
|
var lyricText string
|
||||||
_, langExt := lyricDropDown.GetCurrentOption()
|
_, langExt := lyricDropDown.GetCurrentOption()
|
||||||
@ -318,7 +329,6 @@ func tagPopup(node *AudioFile) (err error) {
|
|||||||
SetScrollable(true).
|
SetScrollable(true).
|
||||||
SetWordWrap(true).
|
SetWordWrap(true).
|
||||||
SetWrap(true).
|
SetWrap(true).
|
||||||
SetBackgroundColor(gomu.colors.popup).
|
|
||||||
SetBorder(true)
|
SetBorder(true)
|
||||||
|
|
||||||
leftGrid.SetRows(3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3).
|
leftGrid.SetRows(3, 3, 3, 3, 3, 0, 3, 3, 3, 3, 3).
|
||||||
@ -332,10 +342,13 @@ func tagPopup(node *AudioFile) (err error) {
|
|||||||
AddItem(deleteLyricButton, 7, 0, 1, 3, 1, 10, true).
|
AddItem(deleteLyricButton, 7, 0, 1, 3, 1, 10, true).
|
||||||
AddItem(getLyricDropDown, 9, 0, 1, 3, 1, 20, true).
|
AddItem(getLyricDropDown, 9, 0, 1, 3, 1, 20, true).
|
||||||
AddItem(getLyricButton, 10, 0, 1, 3, 1, 10, true)
|
AddItem(getLyricButton, 10, 0, 1, 3, 1, 10, true)
|
||||||
leftGrid.SetBorder(true).
|
|
||||||
|
box := tview.NewBox().SetBorder(true).
|
||||||
SetTitle(node.name).
|
SetTitle(node.name).
|
||||||
SetBorderPadding(1, 1, 2, 2)
|
SetBorderPadding(1, 1, 2, 2)
|
||||||
|
|
||||||
|
leftGrid.Box = box
|
||||||
|
|
||||||
rightFlex.SetDirection(tview.FlexColumn).
|
rightFlex.SetDirection(tview.FlexColumn).
|
||||||
AddItem(lyricTextView, 0, 1, true)
|
AddItem(lyricTextView, 0, 1, true)
|
||||||
|
|
||||||
@ -348,8 +361,7 @@ func tagPopup(node *AudioFile) (err error) {
|
|||||||
|
|
||||||
lyricFlex.
|
lyricFlex.
|
||||||
SetTitle(node.name).
|
SetTitle(node.name).
|
||||||
SetBorderPadding(1, 1, 1, 1).
|
SetBorderPadding(1, 1, 1, 1)
|
||||||
SetBackgroundColor(gomu.colors.popup)
|
|
||||||
|
|
||||||
inputs := []tview.Primitive{
|
inputs := []tview.Primitive{
|
||||||
artistInputField,
|
artistInputField,
|
||||||
@ -364,8 +376,7 @@ func tagPopup(node *AudioFile) (err error) {
|
|||||||
lyricTextView,
|
lyricTextView,
|
||||||
}
|
}
|
||||||
|
|
||||||
gomu.pages.
|
gomu.pages.AddPage(popupID, center(lyricFlex, 90, 40), true, true)
|
||||||
AddPage(popupID, center(lyricFlex, 90, 40), true, true)
|
|
||||||
gomu.popups.push(lyricFlex)
|
gomu.popups.push(lyricFlex)
|
||||||
|
|
||||||
lyricFlex.SetInputCapture(func(e *tcell.EventKey) *tcell.EventKey {
|
lyricFlex.SetInputCapture(func(e *tcell.EventKey) *tcell.EventKey {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user