diff --git a/commands/msg/delete.go b/commands/msg/delete.go index 7b56a55..2d7ad0f 100644 --- a/commands/msg/delete.go +++ b/commands/msg/delete.go @@ -56,6 +56,7 @@ func (Delete) Execute(aerc *widgets.Aerc, args []string) error { // no more messages in the list if next == nil { aerc.RemoveTab(h.msgProvider) + store.Select(len(store.Uids())) acct.Messages().Invalidate() return } @@ -69,6 +70,12 @@ func (Delete) Execute(aerc *widgets.Aerc, args []string) error { aerc.ReplaceTab(mv, nextMv, next.Envelope.Subject) }) } + } else { + if next == nil { + // We deleted the last message, select the new last message + // instead of the first message + store.Select(len(store.Uids())) + } } acct.Messages().Invalidate() case *types.Error: