- Whenever a scrolling context is entered/exited, send a ScrollUpdate event.
- StatusBar maintains a stack of scrolling contexts and displays the
last one, if it exists. Each context is associated with a ComponentId.
- To handle dangling contexts after their Components aren't visible
anymore, send a VisibilityChange event in situations where that scenario
is possible.
Add symmetric difference (default), union, difference and intersection
modifiers for selecting ranges. That way you can quickly construct the
selection set you need.
There are three setting levels for tag settings:
- per mailbox override ^
- per account override |
- global setting |
depth
So lookup in each of them in this order for configuration, not just the
deepest level.
If a thread root is missing (i.e. we never received that message or it
was deleted) threads rendered like this:
├─>Re: original subject
├─>Re: original subject
└─>Re: original subject
This causes visual ambiguity if the parentless thread follows another:
Another thread
└─>Re: Another thread
├─>Re: original subject
├─>Re: original subject
└─>Re: original subject
This commit removes the "previous link" from every first message in a group:
┬─>Re: original subject
├─>Re: original subject
└─>Re: original subject
Text attributes have been rewritten as bit flags, so for example instead of
"BoldUnderline" you'd have to define "Bold | Underline" in your theme
settings.
Requested in #21
Refactor Collection from melib to hold what folders have what envelopes.
Frontend accounts will now have a FolderEntry for each logical folder
and will unify many Account fields into one and eliminate a lot of
duplicate/dead code.
Use FolderHash directly as a cursor type for folders within an account
isntead of having a usize (being the order of the folder within the
account) and figuring out the folder_hash everytime it's needed.
Add OfflineListing for offline accounts and AccountStatusChange event.
Merge ui crate with root crate.
In preparation for uploading `meli` as a separate crate on crates.io.
Workspace crates will need to be published as well and having a separate
`ui` crate and binary perhaps doesn't make sense anymore.