feat: do not display deleted messages (#328)

This commit is contained in:
Ayyan 2023-11-14 19:29:57 +05:30 • committed by GitHub
parent b2f5bb79a9
commit 414984c020
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 22 additions and 9 deletions

View file

@ -187,15 +187,7 @@ func (gt *GuildsTree) onSelected(n *tview.TreeNode) {
gt.createChannelNodes(n, cs)
case discord.ChannelID:
ms, err := discordState.Messages(ref, uint(cfg.MessagesLimit))
if err != nil {
log.Println(err)
return
}
for i := len(ms) - 1; i >= 0; i-- {
mainFlex.messagesText.createMessage(ms[i])
}
mainFlex.messagesText.drawMsgs(ref)
c, err := discordState.Cabinet.Channel(ref)
if err != nil {

View file

@ -49,6 +49,18 @@ func newMessagesText() *MessagesText {
return mt
}
func (mt *MessagesText) drawMsgs(cID discord.ChannelID) {
ms, err := discordState.Messages(cID, uint(cfg.MessagesLimit))
if err != nil {
log.Println(err)
return
}
for i := len(ms) - 1; i >= 0; i-- {
mainFlex.messagesText.createMessage(ms[i])
}
}
func (mt *MessagesText) reset() {
mainFlex.messagesText.selectedMessage = -1

View file

@ -34,6 +34,8 @@ func openState(token string) error {
// Handlers
discordState.AddHandler(discordState.onReady)
discordState.AddHandler(discordState.onMessageCreate)
discordState.AddHandler(discordState.onMessageDelete)
discordState.StateLog = discordState.onLog
discordState.OnRequest = append(discordState.Client.OnRequest, discordState.onRequest)
@ -81,3 +83,10 @@ func (s *State) onMessageCreate(m *gateway.MessageCreateEvent) {
mainFlex.messagesText.createMessage(m.Message)
}
}
func (s *State) onMessageDelete(m *gateway.MessageDeleteEvent) {
if mainFlex.guildsTree.selectedChannelID == m.ChannelID {
mainFlex.messagesText.reset()
mainFlex.messagesText.drawMsgs(m.ChannelID)
}
}