diff --git a/commands/msg/archive.go b/commands/msg/archive.go index e1ff9a6..c4f06a3 100644 --- a/commands/msg/archive.go +++ b/commands/msg/archive.go @@ -53,9 +53,13 @@ func (Archive) Execute(aerc *widgets.Aerc, args []string) error { return err } archiveDir := acct.AccountConfig().Archive - store.Next() + var uids []uint32 + for _, msg := range msgs { + uids = append(uids, msg.Uid) + } store.ClearVisualMark() acct.Messages().Invalidate() + findNextNonDeleted(uids, store) var uidMap map[string][]uint32 switch args[1] { diff --git a/commands/msg/move.go b/commands/msg/move.go index d88a36f..b42a984 100644 --- a/commands/msg/move.go +++ b/commands/msg/move.go @@ -61,9 +61,9 @@ func (Move) Execute(aerc *widgets.Aerc, args []string) error { if isMsgView { aerc.RemoveTab(h.msgProvider) } - store.Next() store.ClearVisualMark() acct.Messages().Invalidate() + findNextNonDeleted(uids, store) joinedArgs := strings.Join(args[optind:], " ") store.Move(uids, joinedArgs, createParents, func( msg types.WorkerMessage) {