Remove mu4e-main-quit-or-bury and simply update mu4e-quit
to take a prefix which, if non-nil, make mu4e-quit
bury the buffer rather than quite mu4e.
Also make the mu4e check for an existing mu4e buffer, and if found,
switch to it rather start mu4e.
Rebinding existing functions to different keys works fine, *but* it seems
some 3rd party code rebinds existing keys to different functions; that's
not really supported but use to half-work. Attempt to make it half-work
again, and document.
Let the main-screen show a representation of the *actual* keybindings
rather than assuming the defaults.
For that to work, we need to invoke mu4e-main-mode earlier; add a new
hook mu4e-main-mode-rendered-hook which is invoked after rendering is
complete.
Add a few helpers for this to mu4e-helpers.
Implement function / datas structure to conveniently aggregate all
query-related data, for reuse in various places in mu4e...
... to start with the main menu, which gets much simpler. And the
modeline.
Show favorite bookmark in main-screen (highlighted)
Add baseline-reset when main screen is shown or when the favority
bookmark is searched.
Some code cleanup
Add the concept of a query results baseline, i.e., the result for
bookmark-queries at some particular point in time. Later, we can compare
the results with the then-current query-results.
Show the delta in the main view. Add mu4e-reset-baseline-query-results
to reset the baseline to 'now'. By default, we automatically reset when
explicitly (interactively) going to the main-view, i.e., M-x mu4e.
This reverts commit be695579c6.
The change didn't look very nice (keynames are not aligned etc.), and in
hindsight we should probably implement this slightly differently.
It always struck me as a bit odd to force the user to refresh the main
view after updating and indexing their mail. This change creates a hook
that will simply call `revert-buffer' after an indexing completes.
I'm not quite sure why it was done in the first place, and it seems to have
unwanted side-effects. So let's turn it off and see if anything breaks.
Fixes: #2146.
Usurp more of the utils code than can be re-used without further dependencies in
helpers.
Split off specific parts in their own file.
After the helper/utils changes, update the rest of mu4e to take the changes into
account.
Split off the search functionality from mu4e-headers.el into a new
mu4e-search.el.
Clean up things a bit and create a minor mode in which to add the keybindings.
Enable this in main/headers/view.