Manos Pitsidianakis
3ef60f2688
jobs: add module doco
2020-09-12 23:43:10 +03:00
Manos Pitsidianakis
c9a06b9b5c
mail/view: unset self.dirty early on draw
2020-09-12 23:39:07 +03:00
Manos Pitsidianakis
51db5b6c2f
listing/conversations: redraw selection undo on Esc
2020-09-12 23:08:09 +03:00
Manos Pitsidianakis
14de776314
listing/plain: add row_attr! macro
2020-09-12 23:05:58 +03:00
Manos Pitsidianakis
20b02ffd4f
Lookup tag color/ignore settings in all three setting levels
...
There are three setting levels for tag settings:
- per mailbox override ^
- per account override |
- global setting |
depth
So lookup in each of them in this order for configuration, not just the
deepest level.
2020-09-12 23:02:06 +03:00
Manos Pitsidianakis
41664bbe91
Don't panic if no dbus notification server is available
2020-09-12 21:06:50 +03:00
Manos Pitsidianakis
4829e13c47
melib/maildir: impl copy_messages for Maildir
2020-09-11 17:02:27 +03:00
Manos Pitsidianakis
a1585d4006
components/listing: draw rows select status at all times
2020-09-11 17:02:27 +03:00
Manos Pitsidianakis
ed27ed604c
listing: select multiple messages with a motion
...
- Press a number (movement multiplier)
- Press "select_entry" shortcut (default: v)
- Press a movement (arrow keys, PageUp/Down, Home/End)
- Resulting selection will be symmetric difference of previous selection
plus all the entries traversed with movement
2020-09-11 17:02:27 +03:00
Manos Pitsidianakis
bda5bd963a
mail/view: cache message body/text in MailView state
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
1fe873887f
components/utilities: keep track of finished jobs
...
Keep track of finished jobs in case we get a job notification more than
once.
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
f05dd379ae
Send NewJob event on all job startups
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
65357625ea
conf: impl DotAddressable for NotificationsSettings
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
1ac3a7a903
Make dbus dependency optional
...
Put dbus dependency behing `dbus-notifications` feature.
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
be57b65dae
melib/email: add flags arg to Mail::new
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
d57dd9c98e
melib/email/address: return Option in get_display_name
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
c6c0da7fcb
melib: cleanup commit
...
Cleanup melib module exports, add some document tests, change some
documentation.
2020-09-10 21:19:38 +03:00
Manos Pitsidianakis
8f46c4ebe7
Small fixes
2020-08-27 17:29:27 +03:00
Manos Pitsidianakis
b94342c52b
themes/regexp: fix unwrap check on regexp match byte offsets
2020-08-27 17:27:45 +03:00
Manos Pitsidianakis
f02dde46da
melib/error:Add ErrorKind::Timeout
...
Timeout errors lead to automatic restart of connections without
bothering the user about the details, compared to actual network errors.
2020-08-26 20:01:39 +03:00
Manos Pitsidianakis
25b325dbda
Keep bytes copy in SaveMessage job in case of failure
2020-08-26 20:00:25 +03:00
Manos Pitsidianakis
ca0f37e1f3
Send AccountStatusChange event on receiving mailboxes
2020-08-26 19:59:27 +03:00
Manos Pitsidianakis
843616221e
Add logging level to Generic jobs
...
Not every job success should be shown to the user, for example updating
the sqlite3 database. So introduce a level to only show relevant
notifications.
2020-08-26 19:17:54 +03:00
Manos Pitsidianakis
c6f11fb592
melib: update notify to 4.0.15
2020-08-26 19:17:54 +03:00
Manos Pitsidianakis
14663e46b9
Remove some old TODO comments
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
4217839155
melib/email: remove Envelope::from_token
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
9e9be0b5f3
Remove block_on from mailbox creation/deletion
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
b545a0b905
Show error if watch job fails
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
fc25c7b165
Fix compiler warnings
2020-08-26 00:54:07 +03:00
Manos Pitsidianakis
629997397f
Allow toggle_help (default ?) remapping
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
53e924eb33
Add edit envelope action back as async
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
1ca0bd0d96
sqlite3: add schema versioning
...
To potentially be used with automatic migrations on version update
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
8d50e83a33
melib/email: add case-insensitive Header struct
...
- HeaderName is either 32 or less inlined bytes or heap-allocated vec for more than that.
- Equality and hashing is case-insensitive
- A HeaderMap is a hashmap from HeaderName to Strings that can be
indexed with &str, case insensitive. Insertion order is also preserved
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
94433cfc40
melib/backends: cleanup MailBackend trait definition
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
3eadaba34e
Replace old pseudo-async code with blocking rust async
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
a190805384
melib/backends: Add BackendEvent enum
2020-08-26 00:54:06 +03:00
Manos Pitsidianakis
9928ee78e7
Add Reply{ToAuthor,ToAll} actions
...
- previous Reply action now lets you select recipients by default
- ReplyToAuthor selects the Envelope author as recipient
- ReplyToAll selects all addresses
2020-08-26 00:54:05 +03:00
Manos Pitsidianakis
d95aae1987
terminal/keys: add `Space` identifier in Key Display impl
2020-08-26 00:54:05 +03:00
Manos Pitsidianakis
9afbdd4887
Add insert_user_agent option in composing
...
Add option for automatically inserting a 'User-Agent' header in new
drafts.
2020-08-26 00:54:05 +03:00
Manos Pitsidianakis
bb4754e38a
themes/shortcuts: preserve order of keys
2020-08-26 00:54:05 +03:00
Manos Pitsidianakis
8a6bf3b217
Preserve Account order from configuration file
...
Use IndexMap to preserve the order of accounts in the UI from the
account definitions.
2020-08-26 00:54:05 +03:00
Manos Pitsidianakis
b9e53a7451
melib/smtp: add recipient argument in mail_transaction()
2020-08-16 15:16:27 +03:00
Manos Pitsidianakis
79b2b38e32
melib: add supports_submission backend capability
...
To be used by NNTP, JMAP and some IMAP servers with BURL capability
2020-08-09 14:56:34 +03:00
Manos Pitsidianakis
fe4dae12df
listing/*: show MailboxEntry::status() when length is 0
...
Show the MailboxEntry::status() string when self.length == 0, instead of
"MAILBOX is empty".
2020-08-07 00:39:17 +03:00
Manos Pitsidianakis
c88eac1cc5
melib/jmap: implement search
...
Closes #59
2020-08-06 19:46:46 +03:00
Manos Pitsidianakis
52bcecfd4a
conf.rs: reject unknown configuration options
...
Closes #11
2020-08-03 22:53:06 +03:00
Manos Pitsidianakis
750e32c8e1
mail/listing: use mailbox count() total instead of loaded total
2020-08-02 16:52:19 +03:00
Manos Pitsidianakis
5db749c258
terminal/cells.rs: fix resize to grow actually making the grid smaller
2020-08-02 16:52:19 +03:00
Manos Pitsidianakis
fb523c140a
terminal/cells: resize growable grid when exactly at bounds
2020-08-02 00:49:59 +03:00
Manos Pitsidianakis
890000bd0e
status page: trim extension name at 30 chars
...
NNTP has some long protocol extension names
2020-08-02 00:48:44 +03:00