Manos Pitsidianakis
424b244bb7
fixup some TODO and FIXMEs
2019-11-22 13:59:00 +02:00
Manos Pitsidianakis
501f1a0e1e
pager: add minimum_width and split_lines_reflow
...
Add options to pager settings
2019-11-22 13:13:27 +02:00
Manos Pitsidianakis
022e1f437d
ui/pager: reflow on resize
2019-11-21 15:42:01 +02:00
Manos Pitsidianakis
62bfe2a91f
ui: embed editor cleanups
2019-11-19 23:28:08 +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
0cea6368d9
ui/embed: fix scrolling area issues
2019-11-19 20:39:43 +02:00
Manos Pitsidianakis
f1588f6002
ui: shortcuts refactoring
2019-11-18 22:20:18 +02:00
Manos Pitsidianakis
8798d84e43
ui: update cached rows on row update in CompactListing
2019-11-18 20:55:52 +02:00
Manos Pitsidianakis
51628ac9d2
ui: move list_management mod to melib
...
list_management module includes some small functions to handle mailing
list metadata (List-* headers)
2019-11-18 20:37:48 +02:00
Manos Pitsidianakis
449a24d075
ui: ListActions changes
...
- Parse List-Post value like List-Unsubscribe: comma separated angle bracket limited list of <mailto:> or <url> values
- Check if List-Archive value is angle bracket delimited
2019-11-18 14:55:48 +02:00
Manos Pitsidianakis
590619de0e
ui/compose: remove thread view in reply composer
...
You don't need to have the thread in the composer anymore, since you can
just switch tabs to the actual thread.
2019-11-18 14:53:41 +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
094ce7ee69
Add format_flowed option for composing e-mail
...
When format_flowed=true, generated text/plain attachments include the
format=flowed MIME parameter.
format_flowed is set to true by default.
2019-11-17 13:27:22 +02:00
Manos Pitsidianakis
62f3d12253
ui/view: move reply and edit to view.rs
...
reply and edit actions where only in view/thread.rs, so simple envelope
views had no way to reply. view.rs is used standalone or within
view/thread.rs so it is the appropriate place for the actions.
2019-11-17 12:05:57 +02:00
Manos Pitsidianakis
f8a2ce0bed
ui: small bounds checking fix in view.rs
2019-11-17 12:05:57 +02:00
Manos Pitsidianakis
f8a1a6caa5
melib: replace find_thread_group with find_root_hash
...
thread_group property of ThreadNode doesn't yet reflect the actual root
ThreadNode (the root of the thread, that is). So find the root manually
instead.
2019-11-17 12:05:52 +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
bd4cf860fa
ui: persist row highlighting in CompactListing
2019-11-16 14:00:00 +02:00
Manos Pitsidianakis
f3a3668f3f
ui: correct redrawing when entering Execute command
2019-11-16 13:42:03 +02:00
Manos Pitsidianakis
0d03116e8a
ui: correct row highlighting in CompactListing
2019-11-16 13:41:33 +02:00
Manos Pitsidianakis
aeb9d046a2
ui/ThreadListing: fix uninitialized array entry crash
...
If ThreadListing is uninitialized, self.locations is empty and
coordinates() would panic.
2019-11-15 23:23:14 +02:00
Manos Pitsidianakis
7463248da8
melib: change BackendOp::set_flag() signature
2019-11-15 21:32:55 +02:00
Manos Pitsidianakis
56cda63c83
Fix some warnings
2019-11-14 17:55:24 +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
dce1c39b48
ui: add mailcap support
2019-11-11 22:20:16 +02:00
Manos Pitsidianakis
1d6ef92a4f
ui: make StatusPanel grid growable
2019-11-11 17:59:36 +02:00
Manos Pitsidianakis
776dc107c2
Fix Pager::print_string() with empty string
2019-11-11 00:48:42 +02:00
Manos Pitsidianakis
97e20b22a8
ui: update PlainListing
...
Remake PlainListing after CompactListing to add columns, filtering,
selection.
2019-11-10 23:04:11 +02:00
Manos Pitsidianakis
0cbc44fd0e
ui: exit contact add dialog with Esc in mail view
2019-11-10 13:33:56 +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
098982015b
ui/conversations: show all participating addresses in entry
...
Show all unique From: values of addresses in thread entries in
Conversations
2019-11-09 13:58:16 +02:00
Manos Pitsidianakis
8488ce21bf
ui: move is_online() check to Context
...
Context needs to know when an account gets online in order to get the
mailbox hashes and launch the watcher threads for this account. Instead
of assuming all accounts are online when launching meli, move the
initialisation logic to an is_online() method on Context to do it on
demand.
The is_online() method is then called by ui::components::mail::Listing
everytime it's drawn to check for status changes.
2019-11-08 15:13:42 +02:00
Manos Pitsidianakis
61fa6d3d4b
ui: show supported IMAP CAPABILITIES list in Status
...
In status page for IMAP accounts, show a list of CAPABILITIES and
whether meli supports them
2019-11-08 15:13:42 +02:00
Manos Pitsidianakis
d780d81891
Add account statuses in Status tab
...
List accounts and information about them in Status tab
2019-11-08 15:13:42 +02:00
Manos Pitsidianakis
f718510eeb
ui/listings: split events according to length
...
Some events are invalid when there are no messages shown in the listing.
Instead of checking for self.length > 0 in each of these events, put
them together in an if block.
2019-11-08 15:13:41 +02:00
Manos Pitsidianakis
498f8e8e21
ui/listings: Show errors when filtering
...
Errors were not shown properly because the data_columns grids were being
overwritten by redraw_list(). Call redraw_list() only if filtering was
succesful.
2019-11-08 15:13:41 +02:00
Manos Pitsidianakis
70fb34a2e4
ui/sqlite3: add env body in sqlite3 fts table
...
Add the envelope body in the full text search table inside the sqlite3
db. Now search returns results matching the e-mail content as well.
2019-11-08 15:13:41 +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
e9d17f6897
add cache struct in Account
2019-11-08 15:13:41 +02:00
Manos Pitsidianakis
d1184d4ea5
ui/search: add sorting in search
2019-11-08 15:13:41 +02:00
Manos Pitsidianakis
1b0b699527
ui/listing: mail filter refactoring
...
- show result count and 'Press ESC to go back' message
- search successfully even if currently viewing search results
2019-11-08 15:13:41 +02:00
Manos Pitsidianakis
3af6f338ce
add sqlite3 feature WIP
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
599bda9f28
ui: option to embed editor in composing tab
...
Add configuration option to embed editor in the composing tab instead of
executing and waiting for it.
Set embed = true in Composing section of your configuration to activate.
2019-11-05 08:37:58 +02:00
Manos Pitsidianakis
a9425be61e
ui/contacts: add side-menu, remove accounts tab
...
- Rename accounts tab to status tab
- add side menu to contacts tab to switch between accounts
2019-10-26 15:58:56 +03:00
Manos Pitsidianakis
c64ce58653
ui/accounts: show totals in account tab
2019-10-24 20:36:20 +03:00