forked from Mirrors/gomuks
Add vim-like top/bottom keybinds to roster view
This commit is contained in:
parent
03f8db40a0
commit
50acd2474a
2 changed files with 13 additions and 0 deletions
|
@ -20,6 +20,8 @@ roster:
|
||||||
'k': prev_room
|
'k': prev_room
|
||||||
'Down': next_room
|
'Down': next_room
|
||||||
'Up': prev_room
|
'Up': prev_room
|
||||||
|
'g': top
|
||||||
|
'G': bottom
|
||||||
'Escape': clear
|
'Escape': clear
|
||||||
'q': quit
|
'q': quit
|
||||||
'Enter': enter
|
'Enter': enter
|
||||||
|
|
|
@ -281,6 +281,17 @@ func (rstr *RosterView) OnKeyEvent(event mauview.KeyEvent) bool {
|
||||||
rstr.ScrollNext()
|
rstr.ScrollNext()
|
||||||
case "prev_room":
|
case "prev_room":
|
||||||
rstr.ScrollPrev()
|
rstr.ScrollPrev()
|
||||||
|
case "top":
|
||||||
|
rstr.selected = rstr.First()
|
||||||
|
rstr.scrollOffset = 0
|
||||||
|
case "bottom":
|
||||||
|
rstr.selected = rstr.Last()
|
||||||
|
|
||||||
|
if i := len(rstr.rooms) - rstr.RoomsOnScreen(); i < 0 {
|
||||||
|
rstr.scrollOffset = 0
|
||||||
|
} else {
|
||||||
|
rstr.scrollOffset = i
|
||||||
|
}
|
||||||
case "clear":
|
case "clear":
|
||||||
rstr.selected = nil
|
rstr.selected = nil
|
||||||
case "quit":
|
case "quit":
|
||||||
|
|
Loading…
Add table
Reference in a new issue