The command buffer in the envelope view records numbers the user presses
and then combines them with an action (e.g. type n in decimal; press
open_url action to open nth link, analogously with attachments).
Since a few commits ago, the command buffer number stopped being printed
on the envelope view.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
If meli is installed via cargo or a package without manpages, this
command can be used to install them to the user's system.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Instead of showing the nondescript tab names in the tab area,
use Subject or To: data from the draft in the composer and a subject
from the thread entries.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Toggles between horizontal and vertical layout. Previously it was
decided on the terminal width.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
For large threads, this would result in a lot of futures being created.
The user just wants to read one entry, not all of them. So prioritize
the open entry and some of the latest ones as an optimistic
pre-fetching.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Dialogues handled Esc themselves, which meant the event didn't bubble up
to their parent to let them know they should remove the dialogue. This
commit fixes that.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
There's no need to clone MailViews when opening them in new tabs,
just initialize new ones with the same metadata. That saves us the
trouble of implementing Clone for all related types.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
There was no way to provide context to the user why their
command failed to be parsed. This commit paves the way of returning for
invalid domain values, invalid types, etc.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
So that if you select a mail/thread entry that is currently under the
cursor (making it `highlighted`) you can also see its `selected` status.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
Well this was more complex that it should have been. And not very
optimized because we're not using pipelining in the submit() path:
1. first upload email bytes as a Blob object. This requires a standalone
API post call at a specific url so it cannot be changed with followup
calls to reference the blob's id.
2. Create an EmailObject in the drafts folder.
3. Create an EmailSubmission object referencing the email id of prevous
call. Unfortunately I cannot get the Result Reference to work in
stalwart jmap, so for now this is too a separate transaction.
Caveat emptor: Errors might not be returned to the user.
Closes#277.
https://git.meli.delivery/meli/meli/issues/277https://git.meli.delivery/meli/meli/pulls/279
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
We will need this in the future when we're going to support extra
extensions like Blob and also now to support server submission.
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>