Manos Pitsidianakis
f10cc954e7
Don't dump mail on Account drop
2020-02-28 09:16:50 +02:00
Manos Pitsidianakis
a94bb1e27a
Show float notification on refresh cmd
2020-02-28 09:16:19 +02:00
Manos Pitsidianakis
670485e8c7
compose: clear bounds of compose area properly
2020-02-28 09:15:11 +02:00
Manos Pitsidianakis
7b631beb0a
Don't panic in WorkController::drop
2020-02-28 09:12:36 +02:00
Manos Pitsidianakis
6b2a1f7757
imap: Don't fail on WouldBlock on ImapBlockingConnection
2020-02-28 09:11:41 +02:00
Manos Pitsidianakis
ca51077f53
imap: Add support for untagged FETCH (FLAG.. messages
...
IDLE connection can get untagged "* FETCH (FLAGS ({flag_list))" messages
if any client has changed flags. Support this refresh event.
2020-02-28 09:09:43 +02:00
Manos Pitsidianakis
c1a64d6c33
Add imports in tag_hash macro
2020-02-28 09:04:01 +02:00
Manos Pitsidianakis
53fa3d03da
Notify embedded terminal on embedded process exit
...
When an embedded process exits the main process receives a SIGCHLD. The
check on whether the embedded process is alive is done on input, so
forward an input of '\0' to get the embedded terminal to notice its
child is dead.
2020-02-27 16:46:47 +02:00
Manos Pitsidianakis
126b65817e
Forward input on input/rawinput switch
...
Input thread listens on stdin input and forwards the input to the main
process. When an embedded terminal is launched within the main process,
the input thread is asked to switch to raw input, that is to send the
parsed input and the raw bytes to the main process in order to get them
forwarded to the embedded terminal. The switch happens by calling
get_events and get_events_raw.
When the input thread receives an InputCommand::{No,}Raw, it has already
received an input event, since the `select!` is within the
stdin events for loop. (There's no way to `select` on blocking iterators
or raw fds, which is unfortunate.).
This commit forwards the input to the next function instead of dropping
it.
2020-02-27 16:41:58 +02:00
Manos Pitsidianakis
7807f565ec
Clear input thread channel on restore()
...
The channel may contain Kill commands that will cause the new thread to
exit immediately.
2020-02-27 16:40:03 +02:00
Manos Pitsidianakis
65666e6695
Fix double call of restore_input
...
restore_input is called in State::rcv_event on arrival of a fork
finished event:
```
UIEvent::Fork(ForkType::Finished) => {
self.switch_to_main_screen();
self.switch_to_alternate_screen();
self.context.restore_input();
return;
}
```
So there shouldn't be an extra call here.
2020-02-27 16:37:42 +02:00
Manos Pitsidianakis
c43f3564d3
Update README on notmuch feature
2020-02-27 16:36:47 +02:00
Manos Pitsidianakis
bae083cc8f
Rename Filter action to search
2020-02-26 18:36:52 +02:00
Manos Pitsidianakis
760c1e859d
Add search shortcut to shortcut map
2020-02-26 16:23:02 +02:00
Manos Pitsidianakis
33c1bf6558
Add consume newlines flag to phrase()
2020-02-26 15:53:46 +02:00
Manos Pitsidianakis
303c530488
Load libnotmuch dynamically
2020-02-26 14:18:00 +02:00
Manos Pitsidianakis
ac71d627f1
Implement search for CellBuffer
2020-02-26 12:25:57 +02:00
Manos Pitsidianakis
4ac52d9d5b
Replace every use of Folder with Mailbox
...
Use Mailbox for consistency.
2020-02-26 10:54:10 +02:00
Manos Pitsidianakis
1245eae0be
Add Knuth–Morris–Pratt to pager
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
c9469f26ee
Remove duplicate function timer::arm()
...
arm() was a duplicate of set_value()
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
45c0160cb6
Fix ThreadListing
...
ThreadListing was broken after the ThreadGroup introduction
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
68007a0842
View decoded email source by default
...
Toggle between decoded/raw source with view_raw_source shortcut, default
M-r
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
44da24fc96
Add left/right cursor mvments to execute bar
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
c88d1cae51
Fix create_box boundary fg color
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
c4c11e4abc
Make Selector widget accept FnOnce
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
499fd59c6e
melib/imap: implement refresh()
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
bbdc9d69b4
melib/imap: add ImapConnection::connect()
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
f38d03e43a
melib: {create,delete}_folder returns updated folders
...
Potential parent folders will have their children fields updated, so
just return all folders.
2020-02-25 22:15:13 +02:00
Manos Pitsidianakis
9a46e58029
imap: don't retry command on reconnection
...
If a command fails and connection is restarted, don't try the command
again; it only made sense in the previous connection's context.
2020-02-19 17:06:26 +02:00
Manos Pitsidianakis
e3abd458ce
Add ui_dialogs in State
2020-02-19 17:01:13 +02:00
Manos Pitsidianakis
a806571322
Add UIDialog and UIConfirmationDialog widgets
...
They are just typedefs for the Selector widget. The API is kind of
messed up and this commit is part of the process of cleaning it up:
right now to use this, you check the is_done() method which if returns
true, the done() method executes the closure you defined when creating
the widget. The closure returns a UIEvent which you can forward
application-wide by context.replies.push_back(event) or handle it in
process_event() immediately.
2020-02-19 16:57:37 +02:00
Manos Pitsidianakis
e22ab2b424
ui: fix shortcuts map title not showing up on resize
2020-02-15 17:21:45 +02:00
Manos Pitsidianakis
d779a94279
Fix sent_folder not getting recorded if no explicit folder conf is set
2020-02-12 18:56:05 +02:00
Manos Pitsidianakis
b6efb14824
melib: remove Mailbox
...
Refactor Collection from melib to hold what folders have what envelopes.
Frontend accounts will now have a FolderEntry for each logical folder
and will unify many Account fields into one and eliminate a lot of
duplicate/dead code.
2020-02-10 02:11:07 +02:00
Manos Pitsidianakis
b50e770b5a
ui/accounts: remove Index<usize> impls
2020-02-10 00:41:06 +02:00
Manos Pitsidianakis
aab6b02db2
ui: clear selection with Esc
2020-02-10 00:10:19 +02:00
Manos Pitsidianakis
e26ed83331
Update native-tls to 0.2.3
2020-02-10 00:09:55 +02:00
Manos Pitsidianakis
4090eecd04
ui: Consume Esc input events only when necessary
2020-02-09 23:32:14 +02:00
Manos Pitsidianakis
9757e523bd
debian/: add build artifacts to .gitignore
2020-02-09 20:54:09 +02:00
Manos Pitsidianakis
14b0ef8f37
Respect use_color conf value as well as NO_COLOR
2020-02-09 20:47:36 +02:00
Manos Pitsidianakis
a496de2794
build.rs: add rerun-if-changed
2020-02-09 20:46:39 +02:00
Manos Pitsidianakis
0ebad39b50
Bumb version to 0.5.1
2020-02-09 19:52:00 +02:00
Manos Pitsidianakis
34331232af
build.rs: use `man` binary if mandoc missing in cli-docs
2020-02-09 19:42:37 +02:00
Manos Pitsidianakis
c678b16711
melib/jmap: fix macro path
2020-02-09 17:07:43 +02:00
Manos Pitsidianakis
30c31c9c90
debian/: move xdg-utils to recommends
...
It's not a hard dependency
2020-02-09 16:43:03 +02:00
Manos Pitsidianakis
555654d5e3
Makefile: don't emit timestamps with gzip
2020-02-09 14:49:45 +02:00
Manos Pitsidianakis
fead7a5da4
meli: add invalid flag combo check
2020-02-09 02:56:39 +02:00
Manos Pitsidianakis
962283f9fe
Add opt-level=z flag for release profile
2020-02-09 02:56:13 +02:00
Manos Pitsidianakis
63cdf1a38f
debian/: add mandoc build dependency
2020-02-09 02:46:27 +02:00
Manos Pitsidianakis
0aa2659072
meli: add cli-docs feature
...
Optionally build manpages to text with mandoc and print them from the
command line.
2020-02-09 02:26:21 +02:00