Commit Graph

613 Commits

Author SHA1 Message Date
Manos Pitsidianakis
7accae1774
melib: split address.rs from email.rs 2019-09-20 10:38:29 +03:00
Manos Pitsidianakis
b08001ca5d
melib: create address.rs from email.rs 2019-09-20 10:37:51 +03:00
Manos Pitsidianakis
7fe6532c73
ui: add log on child waiting error 2019-09-20 10:26:08 +03:00
Manos Pitsidianakis
93de60b6d1
maildir: allow Maildir stores as root_folder
Allow top level directories that are not valid maildir folders but
include maildir folders as root_folder of an account.
2019-09-20 10:26:08 +03:00
Manos Pitsidianakis
fb7b038ee1
ui: add set_seen shortcut in {Compact,Conversation}
Shortcut sets an entire thread as seen.
2019-09-20 10:26:08 +03:00
Manos Pitsidianakis
fada0ffce1
ui: use ThreadNode instead of Envelope to print entries in
ConversationsListing
2019-09-20 09:17:04 +03:00
Manos Pitsidianakis
146acb70dd
ui: check account conf for index style in listing.rs 2019-09-20 09:15:13 +03:00
Manos Pitsidianakis
828718141a
ui: return valid values in ListingTrait::coordinates
By convention the valid values at any time of a cursor_pos in mail
listings is in self.new_cursor_pos, which the listing compares with
self.cursor_pos to detect position changes. Returning
self.cursor_pos values with coordinates() is invalid.
2019-09-20 09:12:53 +03:00
Manos Pitsidianakis
fe28e849b3
ui: send update event on folders even on no notification
Send an update event even if user's configuration has turned off
notification for this special event. This happens if the entire folder
is set to `ignore`, or when a particular thread is snoozed. In every
case we would want the UI to update.
2019-09-20 09:10:33 +03:00
Manos Pitsidianakis
7dc3efaedd
imap: allow conn to be offline and retry on demand
Split the TlsStream of the live IMAP connection to an enum to allow both
offline and online states. The connection is restarted if offline when
requested.
2019-09-20 09:07:55 +03:00
Manos Pitsidianakis
b98ce8828c
melib: fix wrong validation in Maildir save()
Path of folder was compared to folder names and saving to eg
'INBOX/Sent' would not result into mail being saved to Folder { name:
'Sent', path: 'INBOX/Sent' }
2019-09-17 17:25:45 +03:00
Manos Pitsidianakis
79212621af
Bump version to 0.3.0 2019-09-16 16:44:04 +03:00
Manos Pitsidianakis
4aa34b2462
add Makefile for installation 2019-09-16 16:41:22 +03:00
Manos Pitsidianakis
8795c2da4f
ui: small configuration fixes
- unused options were removed,
- renamed `index` conf option to `index_style`
2019-09-16 16:41:22 +03:00
Manos Pitsidianakis
e6b7d3a855
update manual page and add meli.conf(5) 2019-09-16 16:40:29 +03:00
Manos Pitsidianakis
080b8ae775
imap: add log entry on connection retry & failure 2019-09-15 23:44:42 +03:00
Manos Pitsidianakis
86f21fbe52
ui: xbiff(1) support 2019-09-15 23:38:32 +03:00
Manos Pitsidianakis
bd8424c1f8
ui: add notification play_sound, sound_file conf settings 2019-09-15 23:38:32 +03:00
Manos Pitsidianakis
c695d7a8e2
ui: add Notification kinds 2019-09-15 23:38:32 +03:00
Manos Pitsidianakis
5cf620f43c
ui: add two log entries 2019-09-15 23:38:32 +03:00
Manos Pitsidianakis
9e2bfa22b1
melib: add logging module 2019-09-15 23:38:32 +03:00
Manos Pitsidianakis
ad01101b9b
ui: fix ThreadView drawing artifacts 2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
af38b7e7cb
ui: add envelope views in new tab action 2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
817c338a13
melib: fix metadata updates in Envelope updates 2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
5ddd68ad9f
ui: add statusbar change with tab switch and updates 2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
059d86de93
map: restart connection on failure in read_lines 2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
bfc36f63de
imap: add byte cache for Envelopes in IMAP backend 2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
2eb41f3d3d
ui: dedup history suggestions in command execute bar 2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
3ae2d03663
ui: add triptych thread mailing view
This mail list view shows one entry per thread just like CompactListing,
but the entry is slightly bigger just like in some GUIs, and when the
thread is opened the view becomes 3 columned:

+--+-------+----+
|~~|-------|~~~ |
|~~|-------|~~  |
|  |-------|    |
|  |-------|~~~ |
+--+-------+----+

This is meant to be used with bigger terminal sizes
2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
e3cd2d4c67
ui: save execute cmd history to XDG_DATA_DIR 2019-09-15 13:21:15 +03:00
Manos Pitsidianakis
f61a43108c
ui: show worker and static threads in account tab 2019-09-15 13:21:15 +03:00
Manos Pitsidianakis
f394fde143
add priority and info to jobs and workers
jobs now have a priority given to them, in order to parse some mailboxes
(eg INBOX, Sent) first.

worker threads now can set their names and status
2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
fd38dbed48
override configuration with per-folder configs 2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
81a55abc7c
Update crossbeam to 0.7.2 and remove chan 2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
ecb3fd7f3d
Add dyn keyword to Trait objects
And fix some unused var warnings as well
2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
d1d11356db
imap: get() ENVELOPE instead of RFC822.HEADER; it's faster 2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
335a1011de
imap: add watch 2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
c3e3c98fb0
melib: filter subscribed folders in MailBackend::new() 2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
64dc44f18f
imap: replace unwraps with checks 2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
525bd16493
imap: add folder operations in backend 2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
c9f7b41e47
imap: continuous payload delivery in async workers 2019-09-15 13:21:13 +03:00
Manos Pitsidianakis
c561814cd6
imap: add danger_accept_invalid_certs option 2019-09-15 13:21:13 +03:00
Manos Pitsidianakis
c2c5f2db69
melib: add Failure to RefreshEventKind 2019-09-15 13:21:13 +03:00
Manos Pitsidianakis
0812242f60
Add IMAP backend
TODOs: new message events (untagged responses)
2019-09-15 13:21:13 +03:00
Manos Pitsidianakis
3f7d962abd
melib: remove ThreadTree, use ThreadNodes for root_set
Remove ThreadTree index in Threads {} struct. Keep a Vec<ThreadHash> for
root_set state of mailbox instead of rebuilding ThreadTrees every
time.
2019-09-08 11:49:23 +03:00
Manos Pitsidianakis
dc2184a9de
melib: add Folder operations in mail backends
Add following operations in mail backend:
- Create,
- Delete,
- Subscribe,
- Unsubscribe,
- Rename
2019-09-08 11:15:57 +03:00
Manos Pitsidianakis
8b0dff728d
ui: don't show new mail notifications in ignored folders 2019-09-08 11:13:51 +03:00
Manos Pitsidianakis
a866e060a1
ui: open MessageRfc822 attachments in new tab 2019-09-08 11:13:51 +03:00
Manos Pitsidianakis
f72fb069fa
ui: add paste input in StatusBar 2019-08-30 18:41:25 +03:00
Manos Pitsidianakis
1328f994f3
Make config objects Serializable with serde 2019-08-25 21:44:19 +03:00