Commit Graph

120 Commits (022e1f437d0eb1531580cc08ca6bb574dab14c3b)

Author SHA1 Message Date
Manos Pitsidianakis 022e1f437d
ui/pager: reflow on resize 5 years ago
Manos Pitsidianakis ce646abc7a
ui: add send confirmation dialog in compose tab
Confirm before sending mail
5 years ago
Manos Pitsidianakis 458f8da332
ui: fix bounds check in StatusBar 5 years ago
Manos Pitsidianakis f1588f6002
ui: shortcuts refactoring 5 years ago
Manos Pitsidianakis 31a86533c5
ui/pager: add Left/Right movements
Left/Right movements change the horizontal offset by (page width) / 3.
5 years ago
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.
5 years ago
Manos Pitsidianakis 1168804cf8
ui: add reflow property to Pager
For displaying format=flowed formatted text/plain attachments properly.
5 years ago
Manos Pitsidianakis f3a3668f3f
ui: correct redrawing when entering Execute command 5 years ago
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.
5 years ago
Manos Pitsidianakis 776dc107c2
Fix Pager::print_string() with empty string 5 years ago
Manos Pitsidianakis 06d99c7f92
ui: Add save attachment command
use as `save-attachment ATTACHMENT_INDEX PATH`
5 years ago
Manos Pitsidianakis 1bd343988e
ui: add horizontal scrolling in pager
It only took what, 3 years?
5 years ago
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.
5 years ago
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.
5 years ago
Manos Pitsidianakis 6b5ed25289
Add history browse option in execute bar
Press Ctrl-P and Ctrl-N to get previous and next command in history.
5 years ago
Manos Pitsidianakis d17deaca01
ui: add M-{i} tab change 5 years ago
Manos Pitsidianakis febea423d9
ui: Add RawBuffer component for raw ansi content 5 years ago
Manos Pitsidianakis 6f816d29c5
conf: add ascii_drawing option
If set to true, box drawing is done with ascii characters.
5 years ago
Manos Pitsidianakis f485079404
ui: align buttons in Selector
Correct alignment of Ok, Cancel buttons
5 years ago
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.
5 years ago
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.
5 years ago
Manos Pitsidianakis d44a68ec69
ui: don't quit if editing a draft
Ask user to save draft or discard it.
5 years ago
Manos Pitsidianakis 6d40a57a2e
ui: scroll in shortcuts panel 5 years ago
Manos Pitsidianakis 91ae539de1
Small fixes 5 years ago
Manos Pitsidianakis 415fb2455b
ui: display status bar messages for 5 seconds 5 years ago
Manos Pitsidianakis af38b7e7cb
ui: add envelope views in new tab action 5 years ago
Manos Pitsidianakis 5ddd68ad9f
ui: add statusbar change with tab switch and updates 5 years ago
Manos Pitsidianakis 2eb41f3d3d
ui: dedup history suggestions in command execute bar 5 years ago
Manos Pitsidianakis e3cd2d4c67
ui: save execute cmd history to XDG_DATA_DIR 5 years ago
Manos Pitsidianakis ecb3fd7f3d
Add dyn keyword to Trait objects
And fix some unused var warnings as well
5 years ago
Manos Pitsidianakis a866e060a1
ui: open MessageRfc822 attachments in new tab 5 years ago
Manos Pitsidianakis f72fb069fa
ui: add paste input in StatusBar 5 years ago
Manos Pitsidianakis 1845b046fa
ui: add attribute support
bold/italic etc
5 years ago
Manos Pitsidianakis 8a0e702127
melib,ui: add MailboxEntry enum
Use an enum to describe a mailbox's state in ui::conf::Account instead
of Result.
5 years ago
Manos Pitsidianakis f13da6a26a
ui: Add pipe action for Pager 5 years ago
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.
5 years ago
Manos Pitsidianakis 70e5949590
ui: add autocomplete for commands in execute bar 5 years ago
Manos Pitsidianakis 74be47ec5a
ui: fix some lints 5 years ago
Manos Pitsidianakis b5ba9c3a8c
ui: force redraw CompactListing after EnvelopeRename event 5 years ago
Manos Pitsidianakis 22dbc7dd9f
ui: don't print empty history or duplicates 5 years ago
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.
5 years ago
Manos Pitsidianakis 06862c1484
ui: prevent some unnecessary redraws 5 years ago
Manos Pitsidianakis 9026fb866e
ui: Add ability to call mailing list actions from Envelope view 5 years ago
Manos Pitsidianakis 24831b3c13
Fix warnings, lints, and 2018 errors 5 years ago
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
5 years ago
Manos Pitsidianakis 7de075df49
ui: add Home/End movements 5 years ago
Manos Pitsidianakis 06b96449c1
ui: add history and autocomplete in execute bar
closes #116 and #117
5 years ago
Manos Pitsidianakis 4582bcd5ae
fix warnings and lints 5 years ago
Manos Pitsidianakis f972f69bad
ui: send RefreshMailbox events in every refresh_mailbox call
closes #108
5 years ago
Manos Pitsidianakis 6e7ab0421b
ui: fix pager scrolling getting stuck 5 years ago