From 0c85b5a6cfdae0cbe1d82cc958231e70888bf09f Mon Sep 17 00:00:00 2001
From: Tim Culverhouse <tim@timculverhouse.com>
Date: Sun, 31 Jul 2022 09:41:22 -0500
Subject: [PATCH] msglist: remove invalidate from commands which remove
 messages

Archive, delete, and move all remove messages from the message store.
The commands themselves invalidated the message list. The message list
was also invalidated for every MessagesDeleted message received. Remove
the call in the command logic to reduce redraws of the message list

Signed-off-by: Tim Culverhouse <tim@timculverhouse.com>
Acked-by: Robin Jarry <robin@jarry.cc>
---
 commands/msg/archive.go | 1 -
 commands/msg/delete.go  | 1 -
 commands/msg/move.go    | 5 -----
 3 files changed, 7 deletions(-)

diff --git a/commands/msg/archive.go b/commands/msg/archive.go
index c4f06a3..d4ad8f9 100644
--- a/commands/msg/archive.go
+++ b/commands/msg/archive.go
@@ -58,7 +58,6 @@ func (Archive) Execute(aerc *widgets.Aerc, args []string) error {
 		uids = append(uids, msg.Uid)
 	}
 	store.ClearVisualMark()
-	acct.Messages().Invalidate()
 	findNextNonDeleted(uids, store)
 
 	var uidMap map[string][]uint32
diff --git a/commands/msg/delete.go b/commands/msg/delete.go
index d90132a..7cf8113 100644
--- a/commands/msg/delete.go
+++ b/commands/msg/delete.go
@@ -78,7 +78,6 @@ func (Delete) Execute(aerc *widgets.Aerc, args []string) error {
 					acct.Messages().Select(0)
 				}
 			}
-			acct.Messages().Invalidate()
 		case *types.Error:
 			store.Remark()
 			aerc.PushError(msg.Error.Error())
diff --git a/commands/msg/move.go b/commands/msg/move.go
index b42a984..b13e94a 100644
--- a/commands/msg/move.go
+++ b/commands/msg/move.go
@@ -53,16 +53,11 @@ func (Move) Execute(aerc *widgets.Aerc, args []string) error {
 	if err != nil {
 		return err
 	}
-	acct, err := h.account()
-	if err != nil {
-		return err
-	}
 	_, isMsgView := h.msgProvider.(*widgets.MessageViewer)
 	if isMsgView {
 		aerc.RemoveTab(h.msgProvider)
 	}
 	store.ClearVisualMark()
-	acct.Messages().Invalidate()
 	findNextNonDeleted(uids, store)
 	joinedArgs := strings.Join(args[optind:], " ")
 	store.Move(uids, joinedArgs, createParents, func(