mirror of
https://git.sr.ht/~sircmpwn/aerc
synced 2024-11-23 16:42:07 +01:00
Revert "Fix out-of-order messages by sorting as we display"
This reverts commit ac99d9ed62644cf0259bdd79481b28c3fbcef650.
This commit is contained in:
parent
35dc57ed90
commit
956f1366a5
@ -13,7 +13,7 @@ type MessageStore struct {
|
||||
Deleted map[uint32]interface{}
|
||||
DirInfo models.DirectoryInfo
|
||||
Messages map[uint32]*models.MessageInfo
|
||||
// List of known UIDs, order is not important
|
||||
// Ordered list of known UIDs
|
||||
uids []uint32
|
||||
|
||||
selected int
|
||||
|
@ -3,7 +3,6 @@ package widgets
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
"sort"
|
||||
|
||||
"github.com/gdamore/tcell"
|
||||
"github.com/mattn/go-runewidth"
|
||||
@ -28,34 +27,6 @@ type MessageList struct {
|
||||
aerc *Aerc
|
||||
}
|
||||
|
||||
type msgSorter struct {
|
||||
uids []uint32
|
||||
store *lib.MessageStore
|
||||
}
|
||||
|
||||
func (s *msgSorter) Len() int {
|
||||
return len(s.uids)
|
||||
}
|
||||
|
||||
func (s *msgSorter) Less(i, j int) bool {
|
||||
msgI := s.store.Messages[s.uids[i]]
|
||||
msgJ := s.store.Messages[s.uids[j]]
|
||||
if msgI == nil && msgJ == nil {
|
||||
return false // doesn't matter which order among nulls
|
||||
} else if msgI == nil && msgJ != nil {
|
||||
return true // say i is before j so we sort i to bottom
|
||||
} else if msgI != nil && msgJ == nil {
|
||||
return false // say i is after j so we sort j to bottom
|
||||
}
|
||||
return msgI.InternalDate.Before(msgJ.InternalDate)
|
||||
}
|
||||
|
||||
func (s *msgSorter) Swap(i, j int) {
|
||||
tmp := s.uids[i]
|
||||
s.uids[i] = s.uids[j]
|
||||
s.uids[j] = tmp
|
||||
}
|
||||
|
||||
func NewMessageList(conf *config.AercConfig, logger *log.Logger, aerc *Aerc) *MessageList {
|
||||
ml := &MessageList{
|
||||
conf: conf,
|
||||
@ -97,8 +68,6 @@ func (ml *MessageList) Draw(ctx *ui.Context) {
|
||||
row int = 0
|
||||
)
|
||||
uids := store.Uids()
|
||||
sorter := msgSorter{uids: uids, store: store}
|
||||
sort.Stable(&sorter)
|
||||
|
||||
for i := len(uids) - 1 - ml.scroll; i >= 0; i-- {
|
||||
uid := uids[i]
|
||||
|
Loading…
Reference in New Issue
Block a user