Commit Graph

500 Commits (pre-alpha-0.4.0)

Author SHA1 Message Date
Manos Pitsidianakis 51c913d450
ui: add event queue for folders in Account 2019-06-10 19:40:49 +03:00
Manos Pitsidianakis 7de075df49
ui: add Home/End movements 2019-06-10 19:40:49 +03:00
Manos Pitsidianakis 06b96449c1
ui: add history and autocomplete in execute bar
closes #116 and #117
2019-06-10 19:40:49 +03:00
Manos Pitsidianakis 3c575c823d
ui: toggle thread snooze flag
snooze field translated to whether the user wants to be notified of new
email in the thread or not. This is toggled with an (temp) EX cmd: `toggle_thread_snooze`

closes #112
2019-06-10 19:40:49 +03:00
Manos Pitsidianakis 22d868f499
save Account to disk
closes #114
2019-06-10 19:40:49 +03:00
Manos Pitsidianakis 4582bcd5ae
fix warnings and lints 2019-06-10 19:40:49 +03:00
Manos Pitsidianakis de81fd1a68
ui: don't show notifications if folder is ignore
Also ignore Sent folder by default
2019-06-10 19:40:49 +03:00
Manos Pitsidianakis 3bc22abdff
ui: draw thread arrows correctly in other sortings
thread arrows in ThreadListing weren't drawn correctly when subsorting
was changed (eg date -> subject)

has_sibling was delegated to ThreadsIterator.
2019-06-10 19:40:49 +03:00
Manos Pitsidianakis 2dec7fa6b6
ui: set plain/threaded/compact keeps mailbox position
closes #109
2019-06-10 19:40:48 +03:00
Manos Pitsidianakis f972f69bad
ui: send RefreshMailbox events in every refresh_mailbox call
closes #108
2019-06-10 19:40:48 +03:00
Manos Pitsidianakis a0b1a079b8
ui: add "application/pgp-signature" content type 2019-06-10 19:40:48 +03:00
Manos Pitsidianakis 4c88422d71
ui: fix scrollbar calculations 2019-06-10 19:40:48 +03:00
Manos Pitsidianakis 6e7ab0421b
ui: fix pager scrolling getting stuck 2019-06-10 19:40:48 +03:00
Manos Pitsidianakis 5d6c4ee2c8
ui: remove useless padding from ThreadView items 2019-06-10 19:40:48 +03:00
Manos Pitsidianakis bf35894a18
ui: distinct shortcut maps with description
put shortcuts in different maps according to their source component
instead of bagging them all in the same one, and then print each
shortcut section on its own in the shortcut window
2019-06-10 19:40:48 +03:00
Manos Pitsidianakis 5a564dee63
melib: print folder tree in Listing menu properly
Depths weren't calculated correctly, and index (eg 0 Inbox) wasn't
colored correctly if the folder's name started with a number (eg 11 2019)
2019-06-10 19:40:48 +03:00
Manos Pitsidianakis d231865f88
ui: add scrollbar widget in view/thread.rs 2019-06-10 19:40:48 +03:00
Manos Pitsidianakis 8b23ddb920
ui: correct mailview visibility toggle
Grid wasn't updated when user toggles mailview's visibility in
view/thread.rs.
2019-06-10 19:40:48 +03:00
Manos Pitsidianakis ca64e4cd4a
ui: rename `b` cmd to `go` 2019-06-10 19:40:47 +03:00
Manos Pitsidianakis 0f4db97b75
ui: display headers in ViewMode::Raw 2019-06-10 19:40:47 +03:00
Manos Pitsidianakis c26dd0685b
ui: print menu entries in order
FolderNode is a tree structure to represent the sorted or user defined
order inside the Account type
2019-06-10 19:40:47 +03:00
Manos Pitsidianakis f1734048c8
ui: fix memory overflow in WordBreakIter 2019-06-10 19:40:47 +03:00
Manos Pitsidianakis 35bac364b1
ui: correctly display multipart html in Views
- Use Alt-r for entering raw mode
- Use r to exit raw mode
- added shortcuts
- add attachment footer in HtmlView::new
2019-06-10 19:40:47 +03:00
Manos Pitsidianakis 59d912e2ee
ui: send events to active subview only in CompactListing 2019-06-10 19:40:47 +03:00
Manos Pitsidianakis aade41401e
ui: add column sep between menu and listing 2019-06-10 19:40:47 +03:00
Manos Pitsidianakis 99527f5684
ui: format From column in CompactListing
closes #87
2019-06-10 19:40:47 +03:00
Manos Pitsidianakis 02083032bf
ui: add From column in CompactListing 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis 1f2c0b4fa7
melib: multipart/mixed with html messages not displayed as html 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis 7e76cb7a4a
ui: align columns in CompactListing 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis e7c50c8dc5
pager: wrong max_cursor_pos setting 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis fb406667ab
add debug! macro to replace eprintlns 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis 9143b2e791
ui: view: small fixes 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis 13cd6b2741
ui: CompactListing: change only highlight in EnvelopeRename event 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis 681cd7d1df
ui: update unicode-rs and fix invalid iterator return 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis 03b9641bc6
ui: fix acc navigation shortcuts direction 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis 3415a382a1
ui: make StackVec return an Option<T> 2019-06-10 19:40:46 +03:00
Manos Pitsidianakis 4ae8cbadbf
ui: reassign listing shortcuts
after `312011c ui: move account menu functions to Listing`, shortcuts like prev_folder etc should be generic over all listing types.
2019-06-10 19:40:45 +03:00
Manos Pitsidianakis 69031e66f9
ui: move account menu functions to Listing
AccountMenu was completely semantically attached to Listing, so there's
no reason for them to be separate and communicating via events.
2019-06-10 19:40:45 +03:00
Manos Pitsidianakis de8b733d92
ui: initialize cursor in AccountMenu
Previous behavior was cursor highlight jumping around freshly loaded
folders
2019-06-10 19:40:45 +03:00
Manos Pitsidianakis 72d347eb6b
ui: make word_break an iter 2019-06-10 19:40:45 +03:00
Manos Pitsidianakis b104a71544
ui: highlight entries in ThreadView within grid boundaries
If entry string length + indentation was more than available width an
out of index panic occurs when opening the thread.
2019-06-10 19:40:45 +03:00
Manos Pitsidianakis 28859542e8
ui: don't wait for workers to join in Drop
for large folders, they will take a lot of time during which the
  terminal is hung up
2019-06-10 19:40:45 +03:00
Manos Pitsidianakis 1e44089d84
ui: Refer to child/parents with FolderHash in BackendFolder
- use a stack to build folder order list in conf/accounts.rs
- update side menu print
2019-06-10 19:40:45 +03:00
Manos Pitsidianakis 8e06e298ab
ui: send only appropriate events to current view 2019-06-10 19:40:45 +03:00
Manos Pitsidianakis 499113acd2
melib: encode header values
closes #102
2019-06-10 19:40:45 +03:00
Manos Pitsidianakis 87adc6dd19
melib/ui: refer to Folders by FolderHash 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis 04eb8d926f
ui: remove debug_log feature, add log positions 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis ea331327b2
ui: return to first tab on TabClose 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis 188e359301
ui: fix nil default ComponentId 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis 9bc76e3bcb
ui: unwrap UIEventType 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis 106744c7ca
ui: remove Entity 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis b993375fa0
ui: put INBOX first in AccountMenu 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis 42a512d010
ui: save sent messages to Sent folder 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis 8149f5712f
don't overwrite 'From' in Composer' 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis 7e80ad2a86
ui: hold live entries for each mailbox in CompactListing 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis 0e2e8b09f6
ui: update accounts tab on mailboxupdate 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis adb3123c57
ui: reverse visible entries if self.reversed in ThreadView 2019-06-10 19:40:44 +03:00
Manos Pitsidianakis 7fa599d13e
ui: clear threadview properly 2019-06-10 19:40:43 +03:00
Manos Pitsidianakis ada0950854
ui: retain hidden properties in ThreadView 2019-06-10 19:40:43 +03:00
Manos Pitsidianakis e3d0ad9170
ui: fix paging in ThreadView 2019-06-10 19:40:43 +03:00
Manos Pitsidianakis 4be1b52089
ui: add hide option in ThreadView 2019-06-10 19:40:43 +03:00
Manos Pitsidianakis 6b3c4d57d6
ui: add mailer setting and send shortcut in composer 2019-06-10 19:40:43 +03:00
Manos Pitsidianakis ce2317da95
ui: print tabs as two spaces
closes #88
2019-06-10 19:40:43 +03:00
Manos Pitsidianakis 4bf1f6b9c9
ui: make Composer account specific 2019-06-10 19:40:43 +03:00
Manos Pitsidianakis cfb7dcec64
ui: make html filter optional in config
closes #92
2019-06-10 19:40:43 +03:00
Manos Pitsidianakis 92f42ad8fa
ui: don't print Carriage Return 2019-06-10 19:40:43 +03:00
Manos Pitsidianakis 2a93463f74
ui: complete fmt::Display impl for Key 2019-06-10 19:40:43 +03:00
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 37f95dd86d
ui: fix crash when ThreadView is initiated without a ready mailbox 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis d7a4bd24c3
ui: do not recreate ThreadView on envelope update event 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis db6e83b755
ui: highlight unseen thread entries in ThreadView
closes #78
2019-06-10 19:40:42 +03:00
Manos Pitsidianakis aa95c89ba8
ui: fix erasure of first body line in MailView 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis ff821e4fca
ui: don't set seen flag in Plainlisting 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis c91f0d73a5
ui: add ListingTrait to get/set coordinates 2019-06-10 19:40:42 +03:00
Manos Pitsidianakis dcb62798f8
ui: properly update cursor on refresh_mailbox in PlainListing 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 f36cb111b5
ui: add reverse order option in ThreadView
closes #70
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 37716c85df
ui: add table to contact list 2019-06-10 19:40:41 +03:00
Manos Pitsidianakis 9356d43787
ui: change menu toggle shortcut 2019-06-10 19:40:41 +03:00
Manos Pitsidianakis e4aec7c17e
ui: add shortcuts in compose menu 2019-06-10 19:40:41 +03:00
Manos Pitsidianakis c3adc244d7
ui: Implement fmt::Display for Key 2019-06-10 19:40:41 +03:00
Manos Pitsidianakis a774aaebf6
ui: fix boundary drawing in Thread 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 1aa4eaa314
ui: add paste event to Field 2019-06-10 19:40:41 +03:00
Manos Pitsidianakis 1867bb6aa3
ui: hide divider column in VSplit if !self.show_divider 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 d50c201776
ui: add hide menu shortcut 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 d5c1da4a20
ui: add contact selectors to every relevant field
concerns #38
2019-06-10 19:40:40 +03:00
Manos Pitsidianakis e5856bd01e
ui: Pin first children in Tabbed 2019-06-10 19:40:40 +03:00
Manos Pitsidianakis 4c26077f30
ui: word break with grapheme length, not bytes
​#69 East characters are not working.
2019-06-10 19:40:40 +03:00
Manos Pitsidianakis 9522508a92
Update broken reply_context drawing
concerns #38
2019-06-10 19:40:40 +03:00
Manos Pitsidianakis 39c8082a47
Distinguish far right selected tab from background 2019-06-10 19:40:40 +03:00
Manos Pitsidianakis 2b06dd1aca
ui: fix pager from_buf reflowing incompatibility 2019-06-10 19:40:40 +03:00
Manos Pitsidianakis 0b76307e30
ui: add grapheme cluster support in text input
closes #60
2019-06-10 19:40:40 +03:00
Manos Pitsidianakis bf038428c2
Run rustfmt 2019-06-10 19:40:39 +03:00
Manos Pitsidianakis e7c95ba229
Clear closed tabs in tabbed area 2019-06-10 19:40:39 +03:00
Manos Pitsidianakis bbd1918d70
Add text reflowing in pager and compose
concerns #69
2019-06-10 19:40:39 +03:00
Manos Pitsidianakis ea65989679
Move terminal stuff in its own module 2019-06-10 19:40:39 +03:00
Manos Pitsidianakis da256be25c
Fix compose pager redrawing bug 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 5bffd8e966
Store Addressbook in JSON 2019-06-10 19:40:39 +03:00
Manos Pitsidianakis b437e55b67
use shortcuts from config or default
closes #63
2019-06-10 19:40:39 +03:00
Manos Pitsidianakis 1f200cfc88
Fix compact listing defaults 2019-06-10 19:40:39 +03:00
Manos Pitsidianakis 5e306130fb
Fix clippy warnings 2019-06-10 19:40:39 +03:00
Manos Pitsidianakis d4c64916f0
Add configurable shortcuts for compact mail listing
concerns #63
2019-06-10 19:40:39 +03:00
Manos Pitsidianakis 1bb1cf7aac
add notification filter
concerns #64
2019-06-10 19:40:38 +03:00
Manos Pitsidianakis 712652a4c8
Fix xdg notification format
Concerns #64
2019-06-10 19:40:38 +03:00
Manos Pitsidianakis d285913974
Add shortcut panel
Concerns #63
2019-06-10 19:40:38 +03:00
Manos Pitsidianakis 12cc9950c7
add close action in Contacts List 2019-06-10 19:40:38 +03:00
Manos Pitsidianakis f748f1e692
edit headers with a form in composer 2019-06-10 19:40:38 +03:00
Manos Pitsidianakis f93310d424
Add Field type for FormWidgets 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 bac75b96dd
Add Contact create 2019-06-10 19:40:38 +03:00
Manos Pitsidianakis 7a0223c9b3
fix buttons/form scrolling issue 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 4ee5447cf9
Add FormWidget/ButtonWidget and use them in Contacts 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 ba6c7d0d7b
Add ContactList component
concerns #11
2019-06-10 19:40:37 +03:00
Manos Pitsidianakis 99d0f81b60
check for needless allocation in CellBuffer::resize() 2019-06-10 19:40:37 +03:00
Manos Pitsidianakis abf8878b39
add set_id() method in Component trait 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 d5c0f113d8
Accept future dates in format_date
closes #49
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 5c45910426
ui: move accounts to conf module 2019-06-10 19:40:36 +03:00
Manos Pitsidianakis 998414aa5a
ui: escape xml chars in notifications
closes #52
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 b0097574a5
ui: change notification hints 2019-06-10 19:40:36 +03:00
Manos Pitsidianakis 679bbb1a04
ui: edit notification format 2019-06-10 19:40:35 +03:00
Manos Pitsidianakis 3f9ea25899
ui: add pageup-dn movements in compact listing 2019-06-10 19:40:35 +03:00
Manos Pitsidianakis 3b4e4195d6
ui: in threadview, skip entry list if length == 1 2019-06-10 19:40:35 +03:00
Manos Pitsidianakis b25e59370a
ui: remove useless self.dirty sets 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 c619d46861
ui: don't block while waiting for Listing status 2019-06-10 19:40:35 +03:00
Manos Pitsidianakis 47481e72da
melib: Prune empty containers while threading 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 1e04e6a4ea
ui: Add bracketed paste mode
closes #42
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 2fcd014bfe
melib: Fix incorrect thread child linking 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 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 13b3808f30
ui: Add FolderConf struct in configuration 2019-06-10 19:40:33 +03:00
Manos Pitsidianakis 31014e275a
ui: add visual separators for accounts in menu
tracking issue: #25
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 91760e5be6
ui: add close dialog in compose tab discard 2019-06-10 19:40:32 +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 a20e7ac5c2
ui: select `From` identities in compose tab
Tracking issue #24
2019-06-10 19:40:32 +03:00
Manos Pitsidianakis d8f81cb596
ui: Remove box chars from AccountMenu 2019-06-10 19:40:32 +03:00
Manos Pitsidianakis d0315a0259
ui: Hide cursor on all occasions 2019-06-10 19:40:32 +03:00
Manos Pitsidianakis 751febeb9e
ui: Hide box drawing in compose tab 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 c01d15b19f
WIP commit 2019-06-10 19:40:31 +03:00
Manos Pitsidianakis c415a5aae3
Rename MailListing to PlainListing 2019-06-10 19:40:31 +03:00
Manos Pitsidianakis 5f24515145
Add buffer display in statusbar 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 a4ac421bca
Fix cursor bounds in pager scrolling 2019-06-10 19:40:31 +03:00
Manos Pitsidianakis 2b6d1e0dbf
Run clippy lints 2019-06-10 19:40:31 +03:00
Manos Pitsidianakis b617fc0136
ThreadView and compact listing
closes #3
2019-06-10 19:40:31 +03:00
Manos Pitsidianakis ad5d2353e8
Add plain threadview 2019-06-10 19:40:30 +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 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 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 d43d8d282c
tab switching doesn't redraw box lines in splits
closes #32
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 832d1243de
Show correct thread on unthreaded view
Closes #31
2019-06-10 19:40:29 +03:00
Manos Pitsidianakis 415ce2a27e
Sort in unthreaded view
concerns #7
2019-06-10 19:40:29 +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 addd27f209
Put root folders on top in account menu 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 7a6fc1ce94
Fix resize bug 2019-06-10 19:40:28 +03:00
Manos Pitsidianakis dacc4e4ba0
Properly draw and exit subview in MailView when in attachment mode 2019-06-10 19:40:27 +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 a3a98f894f
Fix file drop bug 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 93b36a9941
Semifix for more than 1 digit url indexes in ViewMode::Url 2019-06-10 19:40:27 +03:00
Manos Pitsidianakis 2932dd0dc0
Fix some drawing bugs 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 f16fd889e4
Add deleting in ex mode 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 c32c6b82c8
Refactor ui module 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 e4760e4d25
Make parser for ex commands and move actions to their own mod 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 e91f22cb4f
Remove some string conversions 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 a4b8b4fd4e
Show message if attachment view is not possible instead of panic
closes #2
2019-06-10 19:40:25 +03:00
Manos Pitsidianakis faa349fadb
Add text attachment view
concerns #2
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 569e710067
Add create_temp_file helper function with random filenames 2019-06-10 19:40:25 +03:00
Manos Pitsidianakis 0dd379141d
Fix some indentation 2019-06-10 19:40:25 +03:00
Manos Pitsidianakis f1722691e2
Hide cursor after return to alternate screen 2019-06-10 19:40:25 +03:00
Manos Pitsidianakis 2df22c2da9
^Z causes SIGSTOP
closes #6
2019-06-10 19:40:25 +03:00
Manos Pitsidianakis 0aef7e03a5
Fix colors in open-link view 2019-06-10 19:40:25 +03:00
Manos Pitsidianakis 1fd43eb671
Fix whitespace overflow in copy_area_with_break 2019-06-10 19:40:25 +03:00
Manos Pitsidianakis 1389c4b1d5
Add word break copy area function
closes #13
2019-06-10 19:40:24 +03:00
Manos Pitsidianakis 0bcea12400
Color url index in open-link
concerns #13
2019-06-10 19:40:24 +03:00
Manos Pitsidianakis d962da665f
Add range check in url open along with status bar notifications
concerns #13
2019-06-10 19:40:24 +03:00
Manos Pitsidianakis d0e6bc24f4
Add url mode in MailView and open command
for #13
TODO:
 - bounds check with statusbar message
 - color in [X] markers
2019-06-10 19:40:24 +03:00
Manos Pitsidianakis bae613ec54
Remove eprintlns and add some doc 2019-06-10 19:40:24 +03:00
Manos Pitsidianakis dcb1fe6c3a
Create MailView to replace pager in MailListing 2019-06-10 19:40:24 +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 bf0eb66b02
Add 'show_divider' field in (V|H)Split 2019-06-10 19:40:24 +03:00
Manos Pitsidianakis 892b3d389a
Scroll through other accounts when folder scrolling 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 00235fe814
Add message composing and piping to msmtp
Closes #16
2019-06-10 19:40:24 +03:00
Manos Pitsidianakis b35407bc7f
Add child forking functionality 2019-06-10 19:40:23 +03:00
Manos Pitsidianakis ac334b09b1
Use alternate buffer 2019-06-10 19:40:23 +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