diff --git a/internal/mail/mailbox.go b/internal/mail/mailbox.go index 7f1e3d20..c1f85a55 100644 --- a/internal/mail/mailbox.go +++ b/internal/mail/mailbox.go @@ -281,22 +281,19 @@ func (m *Mailbox) listLegacy() ([]*Message, error) { } // ListUnread returns unread (open) messages. +// Filters out messages marked as read (via "read" label in beads mode). func (m *Mailbox) ListUnread() ([]*Message, error) { - if m.legacy { - all, err := m.List() - if err != nil { - return nil, err - } - var unread []*Message - for _, msg := range all { - if !msg.Read { - unread = append(unread, msg) - } - } - return unread, nil + all, err := m.List() + if err != nil { + return nil, err } - // For beads, inbox only returns open (unread) messages - return m.List() + var unread []*Message + for _, msg := range all { + if !msg.Read { + unread = append(unread, msg) + } + } + return unread, nil } // Get returns a message by ID.