Browse Source

fix(cmd): do not clear messages in messagesText widget

Closes #453
ayn2op 10 months ago
parent
commit
644dfadb4f
3 changed files with 7 additions and 11 deletions
  1. 1 3
      cmd/guilds_tree.go
  2. 4 5
      cmd/messages_text.go
  3. 2 3
      cmd/state.go

+ 1 - 3
cmd/guilds_tree.go

@@ -164,9 +164,6 @@ PARENT_CHANNELS:
 }
 
 func (gt *guildsTree) onSelected(node *tview.TreeNode) {
-	gt.selectedChannelID = 0
-
-	app.messagesText.reset()
 	app.messageInput.reset()
 
 	if len(node.GetChildren()) != 0 {
@@ -196,6 +193,7 @@ func (gt *guildsTree) onSelected(node *tview.TreeNode) {
 			return
 		}
 
+		app.messagesText.reset()
 		app.messagesText.drawMsgs(channel.ID)
 		app.messagesText.
 			ScrollToEnd().

+ 4 - 5
cmd/messages_text.go

@@ -74,8 +74,6 @@ func (mt *messagesText) drawMsgs(cID discord.ChannelID) {
 		}
 	}
 
-	mt.Clear()
-
 	for _, m := range slices.Backward(msgs) {
 		mt.createMsg(m)
 	}
@@ -85,9 +83,10 @@ func (mt *messagesText) reset() {
 	mt.selectedMessageID = 0
 	app.messageInput.replyMessageID = 0
 
-	mt.SetTitle("")
-	mt.Clear()
-	mt.Highlight()
+	mt.
+		Clear().
+		Highlight().
+		SetTitle("")
 }
 
 // Region tags are square brackets that contain a region ID in double quotes

+ 2 - 3
cmd/state.go

@@ -120,9 +120,8 @@ func onMessageCreate(m *gateway.MessageCreateEvent) {
 
 func onMessageDelete(m *gateway.MessageDeleteEvent) {
 	if app.guildsTree.selectedChannelID == m.ChannelID {
-		app.messagesText.selectedMessageID = 0
-		app.messagesText.Highlight()
-		app.messagesText.Clear()
+		app.messagesText.reset()
 		app.messagesText.drawMsgs(m.ChannelID)
+		app.Draw()
 	}
 }