Commit Graph

820 Commits

Author SHA1 Message Date
Manos Pitsidianakis
067a8e5c81
Run clippy for 2018 edition 2019-06-10 19:40:43 +03:00
Manos Pitsidianakis
ee4462881e
run cargo fmt 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis
1c7aa0ec9c
update to 2018 edition 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis
ac0e2cbe44
melib: fix invalid folder hierarchy in Backend::folders() 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis
43f89ef680
melib: fix crash in node_build( 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis
ba6c259820
melib: fix duplication of thread nodes in update envelope event 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis
11b2abd1d1
ui: fix seen property of threads on open, add env rename events 2019-06-10 19:40:41 +03:00
Manos Pitsidianakis
5d9af8e32b
ui: improve contact additions from mail view 2019-06-10 19:40:41 +03:00
Manos Pitsidianakis
551db51b00
ui: avoid full renders when worker threads return StartupChecks
Now listings only re-render when their folder gets a StartupCheck event,
account menu always re-renders to update new mail counts

closes #76
2019-06-10 19:40:41 +03:00
Manos Pitsidianakis
d19bda8977
melib: properly save drafts in maildir backend 2019-06-10 19:40:41 +03:00
Manos Pitsidianakis
4629e6a22f
meli: add debug_logs feature
Conditional print of debug logs in stderr. Previously they were always
printed
2019-06-10 19:40:40 +03:00
Manos Pitsidianakis
b741899fcf
ui: Add some docs and mini cleanups 2019-06-10 19:40:40 +03:00
Manos Pitsidianakis
9b4b6051f1
ui: use any email as composing template with edit command
concerns #38
2019-06-10 19:40:40 +03:00
Manos Pitsidianakis
bf038428c2
Run rustfmt 2019-06-10 19:40:39 +03:00
Manos Pitsidianakis
b1d25e6d8d
add autocomplete suggestions in field 2019-06-10 19:40:39 +03:00
Manos Pitsidianakis
5e306130fb
Fix clippy warnings 2019-06-10 19:40:39 +03:00
Manos Pitsidianakis
f748f1e692
edit headers with a form in composer 2019-06-10 19:40:38 +03:00
Manos Pitsidianakis
e285d1006b
Open Contacts list from accounts tab 2019-06-10 19:40:38 +03:00
Manos Pitsidianakis
00abea5bff
Make Entity Send 2019-06-10 19:40:38 +03:00
Manos Pitsidianakis
c135650018
Add Contact edit
concerns #11
2019-06-10 19:40:37 +03:00
Manos Pitsidianakis
bbaf87e345
Add type synonyms for Uuids
closes 58
2019-06-10 19:40:37 +03:00
Manos Pitsidianakis
62168e9183
Add contact view page, edit headers in compose, index style in conf 2019-06-10 19:40:37 +03:00
Manos Pitsidianakis
1883bb46dd
Fix unused cargo warnings 2019-06-10 19:40:37 +03:00
Manos Pitsidianakis
30b1808bdb
ui: save draft to draft_folder
tracking-issue: #38
2019-06-10 19:40:37 +03:00
Manos Pitsidianakis
7ff22229a9
store headers in same order in drafts 2019-06-10 19:40:37 +03:00
Manos Pitsidianakis
04411f1003
rename 'mod.rs' files
closes #53
2019-06-10 19:40:37 +03:00
Manos Pitsidianakis
92bb3bf8d3
ui: add contacts and account panel 2019-06-10 19:40:36 +03:00
Manos Pitsidianakis
07a51de0b6
Fix unused warnings 2019-06-10 19:40:36 +03:00
Manos Pitsidianakis
4be5b1a868
ui: fix mailbox length count 2019-06-10 19:40:36 +03:00
Manos Pitsidianakis
1b3fe2a391
melib: maildir set extension properly 2019-06-10 19:40:36 +03:00
Manos Pitsidianakis
5a28320004
WIP 2019-06-10 19:40:36 +03:00
Manos Pitsidianakis
9b58908f6f
melib: add per-folder hash indexes in maildir backend 2019-06-10 19:40:36 +03:00
Manos Pitsidianakis
2f3c168aeb
melib: add clear debug prints in email structs 2019-06-10 19:40:36 +03:00
Manos Pitsidianakis
fd1378781d
melib: insert envelope in threads after inserting it in collection 2019-06-10 19:40:35 +03:00
Manos Pitsidianakis
afe34d5916
melib: hash path instead of file contents in maildir backend 2019-06-10 19:40:35 +03:00
Manos Pitsidianakis
1950228fda
melib: remove body field from Envelope 2019-06-10 19:40:35 +03:00
Manos Pitsidianakis
f6533d51c7
melib: add async threading
closes #43
2019-06-10 19:40:35 +03:00
Manos Pitsidianakis
0add765030
melib: ensure envelope has MessageID 2019-06-10 19:40:35 +03:00
Manos Pitsidianakis
eda76c744e
melib: add async blocking join 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
47481e72da
melib: Prune empty containers while threading 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
b2e91a83bd
Fix encoded-word parsing bug 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
fae1cdd33e
melib: Re-implement JWZ threading algorithm 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
4993db745a
melib: insert sent_folder content to other mailboxes 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
8c5879032e
melib/ui: print threads in correct order 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
630330f632
melib: add ThreadTree 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
2fcd014bfe
melib: Fix incorrect thread child linking 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
e3457c40d6
melib: fix setting incorrect From: values 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
823889b773
melib: Fix incorrect thread len count 2019-06-10 19:40:34 +03:00
Manos Pitsidianakis
4f715af248
melib: cache threads
closes #28
2019-06-10 19:40:33 +03:00
Manos Pitsidianakis
1f49dfae3b
melib: add hash_set in threads to keep track of envelopes
closes #40
2019-06-10 19:40:33 +03:00
Manos Pitsidianakis
5135c5ce3f
ui: insert new envelopes in threads 2019-06-10 19:40:33 +03:00
Manos Pitsidianakis
bcef22b3f3
ui: add Listing component with 3 modes: compact plain and threaded 2019-06-10 19:40:33 +03:00
Manos Pitsidianakis
6003bdd28c
WIP 2019-06-10 19:40:33 +03:00
Manos Pitsidianakis
3e9d137310
melib: rework mail events
closes #39
2019-06-10 19:40:33 +03:00
Manos Pitsidianakis
c88ee18dda
melib: add quoted body in reply draft 2019-06-10 19:40:33 +03:00
Manos Pitsidianakis
8d3a2d8236
ui: refactor compose actions 2019-06-10 19:40:32 +03:00
Manos Pitsidianakis
b94687cdb0
ui: add reply-context in compose
tracking-issue: #24
2019-06-10 19:40:32 +03:00
Manos Pitsidianakis
58679db790
melib: Add folder path prefix in cache file names
Closes #29
2019-06-10 19:40:32 +03:00
Manos Pitsidianakis
a20e7ac5c2
ui: select From identities in compose tab
Tracking issue #24
2019-06-10 19:40:32 +03:00
Manos Pitsidianakis
deadd3c3fb
ui: Use Draft in compose tab
tracking issue: #24
2019-06-10 19:40:32 +03:00
Manos Pitsidianakis
edf0464011
melib: Add Draft entity 2019-06-10 19:40:31 +03:00
Manos Pitsidianakis
6f994feb13
Whitespace fixes 2019-06-10 19:40:31 +03:00
Manos Pitsidianakis
a6d557d694
Don't insert newlines between multipart attachments
Closes #34
2019-06-10 19:40:31 +03:00
Manos Pitsidianakis
c5992b707d
Add box drawing in threadview with fluid layout 2019-06-10 19:40:31 +03:00
Manos Pitsidianakis
2b6d1e0dbf
Run clippy lints 2019-06-10 19:40:31 +03:00
Manos Pitsidianakis
111f915ced
folder renaming configuration
concerns #27
2019-06-10 19:40:30 +03:00
Manos Pitsidianakis
84bf2d43be
Move accounts to ui 2019-06-10 19:40:30 +03:00
Manos Pitsidianakis
681ac4b849
move config stuff to ui 2019-06-10 19:40:30 +03:00
Manos Pitsidianakis
9d5b2a4628
move config stuff to ui 2019-06-10 19:40:30 +03:00
Manos Pitsidianakis
47dd2ed93e
Fix potential as_ptr() substraction bug 2019-06-10 19:40:30 +03:00
Manos Pitsidianakis
a24c366670
Parse date as phrase 2019-06-10 19:40:30 +03:00
Manos Pitsidianakis
5e7d73e6dc
Add an EnvelopeWrapper in compose 2019-06-10 19:40:30 +03:00
Manos Pitsidianakis
d146c81d48
Add message/rfc822, multipart/digest multipart/mixed views
closes #22
2019-06-10 19:40:30 +03:00
Manos Pitsidianakis
41d8793412
Rewrite multipart attachment parser 2019-06-10 19:40:29 +03:00
Manos Pitsidianakis
ae209e2545
Fix account menu reload bug 2019-06-10 19:40:29 +03:00
Manos Pitsidianakis
c8611926fa
Refactor attachment content types 2019-06-10 19:40:29 +03:00
Manos Pitsidianakis
710920c67b
Detect new mail events and pass them as notifications to State
concerns #26
2019-06-10 19:40:29 +03:00
Manos Pitsidianakis
b2c7430907
Add compact view listing, and compose tab pager
concerns #3
2019-06-10 19:40:29 +03:00
Manos Pitsidianakis
f033463db9
startupcheck signal seems to be causing redraws
closes #33
2019-06-10 19:40:29 +03:00
Manos Pitsidianakis
99fab60990
Fix phrase parser again 2019-06-10 19:40:29 +03:00
Manos Pitsidianakis
5f52caf931
Fix phrase parsing with custom parser
closes #30
2019-06-10 19:40:29 +03:00
Manos Pitsidianakis
036d699ce0
Fix empty input slice bug in encoded_word (Fix #30) 2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
daa28ae188
Sorting in threaded view
Concerns #7
2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
591946a842
Fix qp header parsing 2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
5d0b7fa903
Add Envelope parsing caching
Concerns #28
2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
5889494e9e
Move backend logic to backend and keep Envelope abstract 2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
e316640f68
TODO comment removal 2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
addd27f209
Put root folders on top in account menu 2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
d8137738b5
Add more charsets and parsing stuff 2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
1b44aae5ce
Add reload when receiving refresh event!! 2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
b98a04f35b
Make backend folders completely agnostic (remove maildir logic from
conf)
2019-06-10 19:40:28 +03:00
Manos Pitsidianakis
8462d1aceb
Add HtmlView, bounds checking in pager scrolling and better attachment view 2019-06-10 19:40:27 +03:00
Manos Pitsidianakis
befe00dea6
Add html view 2019-06-10 19:40:27 +03:00
Manos Pitsidianakis
14d65838b7
Fix proper viewing for multipart alternatives, html view and quoted printable soft breaks 2019-06-10 19:40:27 +03:00
Manos Pitsidianakis
a8fed3a042
Add Charset type and Charset based decoding 2019-06-10 19:40:27 +03:00
Manos Pitsidianakis
c30f77a312
Run clippy and rustfmt 2019-06-10 19:40:27 +03:00
Manos Pitsidianakis
43ad31d2ab
Add sort/subsort functions, not working yet as intended 2019-06-10 19:40:27 +03:00
Manos Pitsidianakis
8a7dfcd4ee
Add some documentation 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
00200aedb6
Handle thread joins from State 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
3f35b69ff1
Poll all parse workers on startup 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
f2a646158d
Set flags in backends and mark as read when read in maillisting 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
b21d30c2ef
Async loading of mailboxes on startup 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
4e5721563e
Generate missing message_id from byte hash 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
375b256a4e
Add raw mode view in email 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
63ce729205
Optimize some parser stuff 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
e91f22cb4f
Remove some string conversions in parsing 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
d5c0542f61
Update benches 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
6ebab37a3d
Add some error checking in parsing 2019-06-10 19:40:26 +03:00
Manos Pitsidianakis
2f91d29326
rustfmt everything 2019-06-10 19:40:25 +03:00
Manos Pitsidianakis
ffbd70e40b
Add address_list parser 2019-06-10 19:40:25 +03:00
Manos Pitsidianakis
ea9bdd2074
Add address_list parser 2019-06-10 19:40:25 +03:00
Manos Pitsidianakis
6049449733
Add attachment view for application/* mime
concerns #2

left:

multipart text and pgp.
2019-06-10 19:40:25 +03:00
Manos Pitsidianakis
b7729243ad
Fix compiler warnings 2019-06-10 19:40:25 +03:00
Manos Pitsidianakis
7ed707a309
Print attachments of interest in the text body
Concerns #2
2019-06-10 19:40:24 +03:00
Manos Pitsidianakis
d763699324
Add support for component specific actions for shortcuts 2019-06-10 19:40:24 +03:00
Manos Pitsidianakis
f119789cb0
Add stub for format_flowed support
Concerns #17
2019-06-10 19:40:24 +03:00
Manos Pitsidianakis
f267fe8c9e
Micro fixes 2019-06-10 19:40:24 +03:00
Manos Pitsidianakis
a7993d48f8
Make date printing prettier in entry formatting 2019-06-10 19:40:24 +03:00
Manos Pitsidianakis
0092496632
Rename all getters from get_X to X
closes #5
2019-06-10 19:40:23 +03:00
Manos Pitsidianakis
8c98d3a5a0
Move ui and melib to different crates
closes #9
2019-06-10 19:40:23 +03:00