Manos Pitsidianakis
06d99c7f92
ui: Add save attachment command
...
use as `save-attachment ATTACHMENT_INDEX PATH`
2019-11-10 13:33:22 +02:00
Manos Pitsidianakis
1bd343988e
ui: add horizontal scrolling in pager
...
It only took what, 3 years?
2019-11-09 17:45:23 +02:00
Manos Pitsidianakis
e600b0252f
text_processing: add line_break method
...
In preparation for format=flowed support, add a line_break method in the
text_processing Trait, now renamed from Graphemes to TextProcessing.
2019-11-09 17:44:22 +02:00
Manos Pitsidianakis
78eecbb104
melib: Hide Envelope behind RwLock
...
Envelope can now only be accessed from within a RwLock. Two new structs
are introduced: EnvelopeRef and EnvelopeRefMut. These hold a reference
to an Envelope and the mutex guard that keeps them alive.
This change allows sharing of the envelopes hash map amongst threads.
2019-11-08 15:13:41 +02:00
Manos Pitsidianakis
6b5ed25289
Add history browse option in execute bar
...
Press Ctrl-P and Ctrl-N to get previous and next command in history.
2019-11-08 15:09:25 +02:00
Manos Pitsidianakis
d17deaca01
ui: add M-{i} tab change
2019-10-15 23:47:37 +03:00
Manos Pitsidianakis
febea423d9
ui: Add RawBuffer component for raw ansi content
2019-10-06 11:32:47 +03:00
Manos Pitsidianakis
6f816d29c5
conf: add ascii_drawing option
...
If set to true, box drawing is done with ascii characters.
2019-10-06 11:32:35 +03:00
Manos Pitsidianakis
f485079404
ui: align buttons in Selector
...
Correct alignment of Ok, Cancel buttons
2019-10-03 14:38:58 +03:00
Manos Pitsidianakis
cd761b3166
ui: revamp option dialog
...
Selector component shows choices/options to the user. Ok and Cancel
buttons were added, along with a window border and window title.
2019-10-03 01:03:20 +03:00
Manos Pitsidianakis
68c40a2920
melib: return Result with error when an IO operation fails
...
Don't unwrap anything because this might be temporary, for example a
short IMAP disconnection.
2019-09-27 13:40:02 +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
6d40a57a2e
ui: scroll in shortcuts panel
2019-09-26 13:11:53 +03:00
Manos Pitsidianakis
91ae539de1
Small fixes
2019-09-26 13:11:49 +03:00
Manos Pitsidianakis
415fb2455b
ui: display status bar messages for 5 seconds
2019-09-22 13:35:50 +03:00
Manos Pitsidianakis
af38b7e7cb
ui: add envelope views in new tab action
2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
5ddd68ad9f
ui: add statusbar change with tab switch and updates
2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
2eb41f3d3d
ui: dedup history suggestions in command execute bar
2019-09-15 23:38:31 +03:00
Manos Pitsidianakis
e3cd2d4c67
ui: save execute cmd history to XDG_DATA_DIR
2019-09-15 13:21:15 +03:00
Manos Pitsidianakis
ecb3fd7f3d
Add dyn keyword to Trait objects
...
And fix some unused var warnings as well
2019-09-15 13:21:14 +03:00
Manos Pitsidianakis
a866e060a1
ui: open MessageRfc822 attachments in new tab
2019-09-08 11:13:51 +03:00
Manos Pitsidianakis
f72fb069fa
ui: add paste input in StatusBar
2019-08-30 18:41:25 +03:00
Manos Pitsidianakis
1845b046fa
ui: add attribute support
...
bold/italic etc
2019-08-18 15:47:09 +03:00
Manos Pitsidianakis
8a0e702127
melib,ui: add MailboxEntry enum
...
Use an enum to describe a mailbox's state in ui::conf::Account instead
of Result.
2019-07-28 20:15:41 +03:00
Manos Pitsidianakis
f13da6a26a
ui: Add pipe action for Pager
2019-07-15 00:12:01 +03:00
Manos Pitsidianakis
0925f2a439
ui: restore Page{Up,Dn} to Pager
...
When issuing PageUp and PageDn actions to an e-mail pager in
CompactListing, the input action was handled by listing and not the
pager which led to the keys get seemingly ignored.
2019-07-13 22:52:42 +03:00
Manos Pitsidianakis
70e5949590
ui: add autocomplete for commands in execute bar
2019-07-06 20:44:51 +03:00
Manos Pitsidianakis
74be47ec5a
ui: fix some lints
2019-07-06 12:47:27 +03:00
Manos Pitsidianakis
b5ba9c3a8c
ui: force redraw CompactListing after EnvelopeRename event
2019-07-06 00:19:37 +03:00
Manos Pitsidianakis
22dbc7dd9f
ui: don't print empty history or duplicates
2019-06-25 10:37:19 +03:00
Manos Pitsidianakis
e0e520b2c4
ui: add filter method in ListingTrait
...
Implemented in CompactListing only for now. Filter results are stored in
the filter* fields of the struct.
2019-06-22 16:13:40 +03:00
Manos Pitsidianakis
06862c1484
ui: prevent some unnecessary redraws
2019-06-19 19:39:23 +03:00
Manos Pitsidianakis
9026fb866e
ui: Add ability to call mailing list actions from Envelope view
2019-06-18 22:16:32 +03:00
Manos Pitsidianakis
24831b3c13
Fix warnings, lints, and 2018 errors
2019-06-18 21:14:14 +03:00
Manos Pitsidianakis
42654410e3
ui: move Collection to Account
...
Each account had one mailbox per folder, which had one associated
collection. Now each Account has one Collection for all folders and each
Mailbox object holds only the hashes of each message.
Collection also gets Threads for each folder in order to mix messages
(ie from/to Sent folder).
Insert Sent emails in chronological order
if inserted unsorted, mails a, b with a happened-before b, might never
get added.
Fix multiple insertions in ThreadTree upon insert_reply
insert_reply was creating multiple copies in threading
2019-06-10 19:40:50 +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
4582bcd5ae
fix warnings and lints
2019-06-10 19:40:49 +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
6e7ab0421b
ui: fix pager scrolling getting stuck
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
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
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
4bf1f6b9c9
ui: make Composer account specific
2019-06-10 19:40:43 +03:00
Manos Pitsidianakis
ee4462881e
run cargo fmt
2019-06-10 19:40:42 +03:00