Manos Pitsidianakis
022e1f437d
ui/pager: reflow on resize
2019-11-21 15:42:01 +02:00
Manos Pitsidianakis
ce646abc7a
ui: add send confirmation dialog in compose tab
...
Confirm before sending mail
2019-11-19 23:28:08 +02:00
Manos Pitsidianakis
458f8da332
ui: fix bounds check in StatusBar
2019-11-19 20:40:28 +02:00
Manos Pitsidianakis
f1588f6002
ui: shortcuts refactoring
2019-11-18 22:20:18 +02:00
Manos Pitsidianakis
31a86533c5
ui/pager: add Left/Right movements
...
Left/Right movements change the horizontal offset by (page width) / 3.
2019-11-18 14:50:08 +02:00
Manos Pitsidianakis
995e70e009
ui: change line_break meaning in write_string_to_grid
...
Change line_break parameter from bool flag (whether to break in the end
of a line or not) to an Option<usize>, where the value is the x_offset
of the left side of the area. Thus if line_break == Some(_) when a line
ends its value is set as x to continue in the next line properly.
2019-11-18 14:49:50 +02:00
Manos Pitsidianakis
1168804cf8
ui: add reflow property to Pager
...
For displaying format=flowed formatted text/plain attachments properly.
2019-11-16 20:23:07 +02:00
Manos Pitsidianakis
f3a3668f3f
ui: correct redrawing when entering Execute command
2019-11-16 13:42:03 +02:00
Manos Pitsidianakis
94152f7336
ui: add multiplier shortcuts to cursor movements
...
Prepend a cursor movement (Up/Down/PageUp/PageDown) with a multiplier
(e.g 23+Down, that is '2' then '3' then 'Down') to increase the
movement's length.
2019-11-12 22:14:44 +02:00
Manos Pitsidianakis
776dc107c2
Fix Pager::print_string() with empty string
2019-11-11 00:48:42 +02:00
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