diff options
author | Simon Garrelou <simon.garrelou@gmail.com> | 2022-12-09 15:39:14 +0100 |
---|---|---|
committer | Simon Garrelou <simon.garrelou@gmail.com> | 2022-12-09 15:39:14 +0100 |
commit | 67d60877df816196e51b868e76f091261a2d08da (patch) | |
tree | 9595451d851fab7aa40f24f73cd672bf4711c9dd /src/keybinds.go | |
parent | 9d1d1a02fde0a1561ad6a61e551a144bbeadc45b (diff) | |
download | termsonic-67d60877df816196e51b868e76f091261a2d08da.tar.gz termsonic-67d60877df816196e51b868e76f091261a2d08da.zip |
Move songs in queue
Diffstat (limited to 'src/keybinds.go')
-rw-r--r-- | src/keybinds.go | 39 |
1 files changed, 38 insertions, 1 deletions
diff --git a/src/keybinds.go b/src/keybinds.go index d69be0b..2a9c16b 100644 --- a/src/keybinds.go +++ b/src/keybinds.go | |||
@@ -13,10 +13,47 @@ func (a *app) setupMusicControlKeys(p *tview.Box) { | |||
13 | return nil | 13 | return nil |
14 | } | 14 | } |
15 | 15 | ||
16 | if event.Rune() == 'k' { | 16 | if event.Rune() == 'p' { |
17 | a.playQueue.TogglePause() | 17 | a.playQueue.TogglePause() |
18 | return nil | 18 | return nil |
19 | } | 19 | } |
20 | |||
21 | if a.tv.GetFocus() == a.playQueueList { | ||
22 | if event.Rune() == 'd' { | ||
23 | sel := a.playQueueList.GetCurrentItem() | ||
24 | err := a.playQueue.RemoveSong(sel) | ||
25 | if err != nil { | ||
26 | a.alert("Error: %v", err) | ||
27 | } | ||
28 | } else if event.Rune() == 'k' { | ||
29 | sel := a.playQueueList.GetCurrentItem() | ||
30 | if sel == a.playQueueList.GetItemCount()-1 { | ||
31 | return nil | ||
32 | } | ||
33 | err := a.playQueue.Switch(sel, sel+1) | ||
34 | if err != nil { | ||
35 | a.alert("Error: %v", err) | ||
36 | } | ||
37 | |||
38 | a.playQueueList.SetCurrentItem(sel + 1) | ||
39 | |||
40 | return nil | ||
41 | } else if event.Rune() == 'j' { | ||
42 | sel := a.playQueueList.GetCurrentItem() | ||
43 | if sel == 0 { | ||
44 | return nil | ||
45 | } | ||
46 | err := a.playQueue.Switch(sel, sel-1) | ||
47 | if err != nil { | ||
48 | a.alert("Error: %v", err) | ||
49 | } | ||
50 | |||
51 | a.playQueueList.SetCurrentItem(sel - 1) | ||
52 | |||
53 | return nil | ||
54 | } | ||
55 | } | ||
56 | |||
20 | return event | 57 | return event |
21 | }) | 58 | }) |
22 | } | 59 | } |