|
@@ -249,20 +249,17 @@ func onMessagesViewInputCapture(e *tcell.EventKey) *tcell.EventKey {
|
|
|
|
|
|
|
|
if len(messagesView.GetHighlights()) == 0 {
|
|
if len(messagesView.GetHighlights()) == 0 {
|
|
|
selectedMessage = len(ms)
|
|
selectedMessage = len(ms)
|
|
|
- messagesView.
|
|
|
|
|
- Highlight(ms[selectedMessage-1].ID).
|
|
|
|
|
- ScrollToHighlight()
|
|
|
|
|
} else {
|
|
} else {
|
|
|
selectedMessage--
|
|
selectedMessage--
|
|
|
if selectedMessage < 1 {
|
|
if selectedMessage < 1 {
|
|
|
selectedMessage = 1
|
|
selectedMessage = 1
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- messagesView.
|
|
|
|
|
- Highlight(ms[selectedMessage-1].ID).
|
|
|
|
|
- ScrollToHighlight()
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ messagesView.
|
|
|
|
|
+ Highlight(ms[selectedMessage-1].ID).
|
|
|
|
|
+ ScrollToHighlight()
|
|
|
|
|
+
|
|
|
return nil
|
|
return nil
|
|
|
case conf.Keybindings.MessagesView.SelectNext:
|
|
case conf.Keybindings.MessagesView.SelectNext:
|
|
|
ms := selectedChannel.Messages
|
|
ms := selectedChannel.Messages
|
|
@@ -272,20 +269,17 @@ func onMessagesViewInputCapture(e *tcell.EventKey) *tcell.EventKey {
|
|
|
|
|
|
|
|
if len(messagesView.GetHighlights()) == 0 {
|
|
if len(messagesView.GetHighlights()) == 0 {
|
|
|
selectedMessage = len(ms)
|
|
selectedMessage = len(ms)
|
|
|
- messagesView.
|
|
|
|
|
- Highlight(ms[selectedMessage-1].ID).
|
|
|
|
|
- ScrollToHighlight()
|
|
|
|
|
} else {
|
|
} else {
|
|
|
selectedMessage++
|
|
selectedMessage++
|
|
|
if selectedMessage > len(ms) {
|
|
if selectedMessage > len(ms) {
|
|
|
selectedMessage = len(ms)
|
|
selectedMessage = len(ms)
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- messagesView.
|
|
|
|
|
- Highlight(ms[selectedMessage-1].ID).
|
|
|
|
|
- ScrollToHighlight()
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ messagesView.
|
|
|
|
|
+ Highlight(ms[selectedMessage-1].ID).
|
|
|
|
|
+ ScrollToHighlight()
|
|
|
|
|
+
|
|
|
return nil
|
|
return nil
|
|
|
case conf.Keybindings.MessagesView.SelectFirst:
|
|
case conf.Keybindings.MessagesView.SelectFirst:
|
|
|
ms := selectedChannel.Messages
|
|
ms := selectedChannel.Messages
|
|
@@ -313,9 +307,18 @@ func onMessagesViewInputCapture(e *tcell.EventKey) *tcell.EventKey {
|
|
|
return nil
|
|
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)
|
|
app.SetFocus(messageInputField)
|
|
|
case conf.Keybindings.MessagesView.ReplyMention:
|
|
case conf.Keybindings.MessagesView.ReplyMention:
|
|
|
ms := selectedChannel.Messages
|
|
ms := selectedChannel.Messages
|
|
@@ -323,6 +326,17 @@ func onMessagesViewInputCapture(e *tcell.EventKey) *tcell.EventKey {
|
|
|
return nil
|
|
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)
|
|
messageInputField.SetTitle("[@] Replying to " + ms[selectedMessage-1].Author.Username)
|
|
|
app.SetFocus(messageInputField)
|
|
app.SetFocus(messageInputField)
|
|
|
}
|
|
}
|