aerc/widgets
Tim Culverhouse 8b6f9719a8 dirlist: update RUE counts for imap/maildir on move|copy|delete|archive
When moving/copying/deleting/archiving a message in imap, the RUE counts
displayed in the dirlist would not update properly. Maildir has (had) an
implementation that recounts the entire directory and updates the
DirectoryInfo after one of these actions.

This patch implements a more efficient method of updating, and also
enables it to apply to IMAP without any additional requests. Upon
completion of the action, the counts are manually updated with the count
of messages in the action and recent and/or unseen states of those
messages. This is more efficient for maildir, because we aren't counting
everything in the store. For IMAP, we get the updates for free because
we are only performing the update after confirmation from the server
that the action has happened.

Signed-off-by: Tim Culverhouse <tim@timculverhouse.com>
Acked-by: Robin Jarry <robin@jarry.cc>
2022-06-07 16:19:23 +02:00
..
account-wizard.go logging: fix race condition in startup 2022-03-24 12:37:53 +01:00
account.go dirlist: update RUE counts for imap/maildir on move|copy|delete|archive 2022-06-07 16:19:23 +02:00
aerc.go ui: check bounds before drawing dialog 2022-05-31 14:32:30 +02:00
common.go go.mod: change base git url 2021-11-05 10:21:45 +01:00
compose.go compose: append text parts 2022-05-31 14:32:08 +02:00
dirlist.go dirlist: update RUE counts for imap/maildir on move|copy|delete|archive 2022-06-07 16:19:23 +02:00
dirtree.go style: add style config options for dirlist_unread and dirlist_recent 2022-04-27 09:46:06 +02:00
exline.go completions: add support for completing multiple addresses 2022-01-07 13:54:10 +01:00
getpasswd.go go.mod: change base git url 2021-11-05 10:21:45 +01:00
headerlayout.go go.mod: change base git url 2021-11-05 10:21:45 +01:00
msglist.go refactor: refactor pgp implementation 2022-04-27 09:46:11 +02:00
msgviewer.go refactor: refactor pgp implementation 2022-04-27 09:46:11 +02:00
pgpinfo.go refactor: refactor pgp implementation 2022-04-27 09:46:11 +02:00
providesmessage.go go.mod: change base git url 2021-11-05 10:21:45 +01:00
scrollable.go scrollable: extract scrolling behavior for reuse 2022-03-03 21:11:05 +01:00
selector.go widgets: provide a generic selector dialog ui 2022-05-31 14:32:30 +02:00
spinner.go logging: added a log on panic 2022-03-23 20:56:09 +01:00
status.go status: use contextual ui styleset for statusline 2022-04-17 12:18:29 +02:00
tabhost.go Implement style configuration. 2020-08-06 21:42:06 +02:00
terminal.go terminal: fix deadlock with finer-grained locking 2022-05-25 22:18:26 +02:00