Commit Graph

907 Commits (0b4109dfdb9de09af4fcf64d9003296ee2bc6e27)
 

Author SHA1 Message Date
Manos Pitsidianakis ab0b4f5168
ui/themes: add defaults in add!() macro 5 years ago
Manos Pitsidianakis eedb03dcd0
ui/themes: fix attr parsing not recognizing links 5 years ago
Manos Pitsidianakis fc4b9f8919
ui/themes: add other_themes field to Theme
Add support for multiple arbitrarily named themes.
5 years ago
Manos Pitsidianakis 72e1d5d52d
ui/themes: add link cycle detection in theme validation 5 years ago
Manos Pitsidianakis 2a4ecc8314
Micro fix in meli.conf.5 5 years ago
Manos Pitsidianakis 1e2b3c073d
ui/themes: add ThemeAttribute
Consolidate {fg,bg} color theme settings to ThemeAttribute and add Attr
(bold, etc).
5 years ago
Manos Pitsidianakis f787eb75b6
ui/themes: add ThemeValue struct
ThemeValue is either a Color or a theme key, meaning the value is linked
to another key's value.
5 years ago
Manos Pitsidianakis aa04ddda3d
ui/themes: add envelope view headers/body theme colors 5 years ago
Manos Pitsidianakis dc63e1f657
Minor changes 5 years ago
Manos Pitsidianakis 1e2acd3b29
melib: add complete() method to ShellExpandTrait
complete(force: bool) returns String path segments that when appended to
the path will form a valid location. Example:

  - User types: save-attachment 1 /t
  - User presses <TAB>.
  - complete() returns the suggestion: "mp/"
  - User sees: save-attachment 1 /tmp/

complete() uses openat() and getdents64 syscalls hoping it's faster than
using stdlib.
5 years ago
Manos Pitsidianakis 6d9f584de3
Update nix to 0.16.1 5 years ago
Manos Pitsidianakis a1c449e585
ui/themes: add theming to ConversationsListing, sidebar 5 years ago
Manos Pitsidianakis a9842cacee
ui: add theming support
Configuration flag "terminal.themes" has two default theme entries,
"dark" and "light".

This commit alters only CompactListing for theme support.
5 years ago
Manos Pitsidianakis 63ff25b36a
ui/listings: add folder_hash field
No reason not to have it stored and discover it whenever it's needed.
5 years ago
Manos Pitsidianakis e07b5faf6e
melib/threads: already-exists check in threads insert 5 years ago
Manos Pitsidianakis 350fafb515
melib/thread: add attachments field to Thread 5 years ago
Manos Pitsidianakis 5e68d600b9
melib/threads: Split ThreadGroup::Group to Thread
Create Thread struct.
5 years ago
Manos Pitsidianakis d9269335a1
melib/threads: rename thread hashes
- Rename ThreadHash to ThreadNodeHash
- Rename ThreadGroupHash to ThreadHash
5 years ago
Manos Pitsidianakis 47a69f8eb9
melib: add ThreadGroup
Instead of using Union/Find to gather mail that belongs in the same
e-mail thread together, add a new entity ThreadGroup that ThreadNodes
point to. ThreadGroup represents an actual Thread: A thread root
ThreadGroup::Group or a reply ThreadGroup::Node.

To make semantics more accurate:

- ThreadNode hash should be renamed to ThreadNodeHash
- ThreadGroupHash should be renamed to ThreadHash
- ThreadGroup::Group should be a struct named Thread instead
- move ThreadGroup::Node logic to ThreadNode akin to Union/Find
- rename ThreaddGroup::Group to Thread
5 years ago
Manos Pitsidianakis 20f86f2741
ui/listing: add mailbox reload rate limit 5 years ago
Manos Pitsidianakis 0ac10aa4d0
Some listing refactoring 5 years ago
Manos Pitsidianakis f58ed387dd
ui: add ratelimiting in UI notifications and drawing 5 years ago
Manos Pitsidianakis 1eb49efb22
melib/threads: use all References in thread building
WIP
5 years ago
Manos Pitsidianakis 56e3ea1548
melib/imap: refactor early error exit 5 years ago
Manos Pitsidianakis 7f8c638361
melib/imap: add mailbox creation ability 5 years ago
Manos Pitsidianakis 853fe14128
melib: fix two minor email parsing bugs
- windows-1250 encoding not being recognized
- spaces in Message-ID header messing up parsing '<' + msg-id + '>'
structure
5 years ago
Manos Pitsidianakis 6835968d9a
melib/datetime: convert date to utc before converting to unix epoch 5 years ago
Manos Pitsidianakis 86d8419ce7
ui: add manual_refresh, refresh_command settings
manual_refresh Ar boolean
  (optional) if true, do not monitor account for changes (shortcut listing.refresh)
  refresh_command Ar String
  (optional) command to execute when manually refreshing (shortcut listing.refresh)
5 years ago
Manos Pitsidianakis 5e912db461
Send timer ID as si_value to SIGALRM handler
Associate each alarm signal with the timer of its origin.
5 years ago
Manos Pitsidianakis a365a846b8
Replace StackVec with smallvec::SmallVec
SmallVec has a less buggy and better implementation.
5 years ago
Manos Pitsidianakis b6403f486b
ui: Remove RefreshMailbox event
Leftover from older versions, it wasn't used  anywhere
5 years ago
Manos Pitsidianakis ca7d72e732
melib: Replace String with Cow<'static, str> 5 years ago
Manos Pitsidianakis 9fcc868acd
remove chrono 5 years ago
Manos Pitsidianakis c0ac643f05
melib: add datetime module
Datetime module adds POSIX time functions interface
5 years ago
Manos Pitsidianakis f6de511abd
plugin-backend: add BackendOp for PluginBackend 5 years ago
Manos Pitsidianakis beeea9a0c1
ui: implement PosixTimer
Add interface for posix timers timer_create(2) time(7)
5 years ago
Manos Pitsidianakis 6671fe926e
melib: don't treat missing end boundary as error
Don't treat missing end boundary as error in multipart attachments.

python3's nntplib seems to return MIME attachments with this property
5 years ago
Manos Pitsidianakis 8694278369
ui: add auto_choose_multipart_alternative
Choose text/html by default if text/plain is empty in
multipart/alternative attachments

This happens in some newsletters I've come upon
5 years ago
Manos Pitsidianakis 3d84f3b9ad
notmuch: remove needless clones 5 years ago
Manos Pitsidianakis b964a6a033
Plugins WIP #2 5 years ago
Manos Pitsidianakis 12509748f6
Plugins WIP 5 years ago
Manos Pitsidianakis 21526b5faf
melib: make Work use FnOnce closures
There was no need to use Fn() instead of FnOnce()
5 years ago
Manos Pitsidianakis 8de5a9412d
ui/compose: small panic fix
if user (Esc)apes from the send dialog the selector widget will not
  return any values
5 years ago
Manos Pitsidianakis 0739f80f4b
ui/MailView: print attachment tree instead of list 5 years ago
Manos Pitsidianakis 92826f982f
melib/attachments: add MultipartType::Related kind 5 years ago
Manos Pitsidianakis 9211913405
meli/backends: honor mailbox subscriptions in IMAP/JMAP 5 years ago
Manos Pitsidianakis 7eceef93e9
melib/backends: remove folder_operation
folder_operation functionalities will go to BackendFolder trait
5 years ago
Manos Pitsidianakis 9080e0fd96
melib: rename FolderConf `rename` field to alias 5 years ago
Manos Pitsidianakis 450c9f2b1c
Add pre-push git hook 5 years ago
Manos Pitsidianakis c23cc45edd
melib: fix test import not found 5 years ago