Fix mouse highlights not handled (#75)
This commit is contained in:
parent
3ef4574e03
commit
97ac92301c
1 changed files with 31 additions and 17 deletions
48
ui.go
48
ui.go
|
|
@ -249,20 +249,17 @@ func onMessagesViewInputCapture(e *tcell.EventKey) *tcell.EventKey {
|
|||
|
||||
if len(messagesView.GetHighlights()) == 0 {
|
||||
selectedMessage = len(ms)
|
||||
messagesView.
|
||||
Highlight(ms[selectedMessage-1].ID).
|
||||
ScrollToHighlight()
|
||||
} else {
|
||||
selectedMessage--
|
||||
if selectedMessage < 1 {
|
||||
selectedMessage = 1
|
||||
}
|
||||
|
||||
messagesView.
|
||||
Highlight(ms[selectedMessage-1].ID).
|
||||
ScrollToHighlight()
|
||||
}
|
||||
|
||||
messagesView.
|
||||
Highlight(ms[selectedMessage-1].ID).
|
||||
ScrollToHighlight()
|
||||
|
||||
return nil
|
||||
case conf.Keybindings.MessagesView.SelectNext:
|
||||
ms := selectedChannel.Messages
|
||||
|
|
@ -272,20 +269,17 @@ func onMessagesViewInputCapture(e *tcell.EventKey) *tcell.EventKey {
|
|||
|
||||
if len(messagesView.GetHighlights()) == 0 {
|
||||
selectedMessage = len(ms)
|
||||
messagesView.
|
||||
Highlight(ms[selectedMessage-1].ID).
|
||||
ScrollToHighlight()
|
||||
} else {
|
||||
selectedMessage++
|
||||
if selectedMessage > len(ms) {
|
||||
selectedMessage = len(ms)
|
||||
}
|
||||
|
||||
messagesView.
|
||||
Highlight(ms[selectedMessage-1].ID).
|
||||
ScrollToHighlight()
|
||||
}
|
||||
|
||||
messagesView.
|
||||
Highlight(ms[selectedMessage-1].ID).
|
||||
ScrollToHighlight()
|
||||
|
||||
return nil
|
||||
case conf.Keybindings.MessagesView.SelectFirst:
|
||||
ms := selectedChannel.Messages
|
||||
|
|
@ -313,9 +307,18 @@ func onMessagesViewInputCapture(e *tcell.EventKey) *tcell.EventKey {
|
|||
return nil
|
||||
}
|
||||
|
||||
messageInputField.SetTitle(
|
||||
"Replying to " + ms[selectedMessage-1].Author.Username,
|
||||
)
|
||||
hs := messagesView.GetHighlights()
|
||||
if len(hs) == 0 {
|
||||
return nil
|
||||
}
|
||||
|
||||
for i, m := range ms {
|
||||
if m.ID == hs[0] {
|
||||
selectedMessage = i + 1
|
||||
}
|
||||
}
|
||||
|
||||
messageInputField.SetTitle("Replying to " + ms[selectedMessage-1].Author.Username)
|
||||
app.SetFocus(messageInputField)
|
||||
case conf.Keybindings.MessagesView.ReplyMention:
|
||||
ms := selectedChannel.Messages
|
||||
|
|
@ -323,6 +326,17 @@ func onMessagesViewInputCapture(e *tcell.EventKey) *tcell.EventKey {
|
|||
return nil
|
||||
}
|
||||
|
||||
hs := messagesView.GetHighlights()
|
||||
if len(hs) == 0 {
|
||||
return nil
|
||||
}
|
||||
|
||||
for i, m := range ms {
|
||||
if m.ID == hs[0] {
|
||||
selectedMessage = i + 1
|
||||
}
|
||||
}
|
||||
|
||||
messageInputField.SetTitle("[@] Replying to " + ms[selectedMessage-1].Author.Username)
|
||||
app.SetFocus(messageInputField)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue