Manos Pitsidianakis
321be8555f
Cleanup startup error exit paths
...
Make startup methods return Results so that the main binary can exit
cleanly instead of using std::process::exit from arbitrary positions,
which exits the process immediately and doesn't run destructors.
2019-11-16 00:33:22 +02:00
Manos Pitsidianakis
99da9a35b6
Add embed pty support
...
Emulate a terminal within meli. In the next commit it will be used to
embed an editor in the composing tab.
This is a non-complete xterm emulation that has some bugs.
2019-11-05 08:37:27 +02:00
Manos Pitsidianakis
a9425be61e
ui/contacts: add side-menu, remove accounts tab
...
- Rename accounts tab to status tab
- add side menu to contacts tab to switch between accounts
2019-10-26 15:58:56 +03:00
Manos Pitsidianakis
212e9bd701
Revert "Show manuals with command line arguments"
...
Since this commit requires `mandoc` as a build dependency, it is removed
for now until a better compromise is found.
This reverts commit 6a8f869e5b
.
2019-10-24 12:19:29 +03:00
Manos Pitsidianakis
6a8f869e5b
Show manuals with command line arguments
...
Add --manual, --conf-manual command line arguments that display manpages
through a pager. If no pager is found, this currently fails. It should
print the manuals to stdout instead.
The manuals are read from src/manuals and are generated with mandoc
whenever changes to the manpage sources meli.1 and meli.conf.5 are made.
2019-10-23 10:45:13 +03:00
Manos Pitsidianakis
ee9ffffa12
bin: C-L issues manual redraw
2019-10-03 19:11:28 +03:00
Manos Pitsidianakis
d44a68ec69
ui: don't quit if editing a draft
...
Ask user to save draft or discard it.
2019-09-27 13:40:02 +03:00
Manos Pitsidianakis
b07db29a19
ui: add timer tick every 300ms
...
Check for pending events in the main process by receiving a timer event
every 300ms. This way loaded folders or received emails will get
recognized even if the appropriate informing signals got lost.
2019-09-22 11:00:05 +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
81a55abc7c
Update crossbeam to 0.7.2 and remove chan
2019-09-15 13:21:14 +03:00
Matthias Beyer
6e716946b7
Reformat to be a proper rust comment
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-02 01:00:53 +03:00
Manos Pitsidianakis
2a1bf37e69
Add --version command line flag
2019-08-02 01:00:53 +03:00
Manos Pitsidianakis
df5559023d
add --help, --config, --create-config arguments
2019-07-29 20:22:34 +03:00
Manos Pitsidianakis
93f3d6e230
remove std::dbg uses
2019-07-09 13:05:11 +03:00
Manos Pitsidianakis
fb406667ab
add debug! macro to replace eprintlns
2019-06-10 19:40:46 +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
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
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
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
1867bb6aa3
ui: hide divider column in VSplit if !self.show_divider
2019-06-10 19:40:41 +03:00
Manos Pitsidianakis
a2e81ed354
ui: enter EX mode with space
2019-06-10 19:40:40 +03:00
Manos Pitsidianakis
bf038428c2
Run rustfmt
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
4ee5447cf9
Add FormWidget/ButtonWidget and use them in Contacts
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
92bb3bf8d3
ui: add contacts and account panel
2019-06-10 19:40:36 +03:00
Manos Pitsidianakis
5a28320004
WIP
2019-06-10 19:40:36 +03:00
Manos Pitsidianakis
fae1cdd33e
melib: Re-implement JWZ threading algorithm
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
3e9d137310
melib: rework mail events
...
closes #39
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
2b6d1e0dbf
Run clippy lints
2019-06-10 19:40:31 +03:00
Manos Pitsidianakis
ad5d2353e8
Add plain threadview
2019-06-10 19:40:30 +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
5889494e9e
Move backend logic to backend and keep Envelope abstract
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
0c018dd544
Remove excess redraw in event loop
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
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