Split off the MIME-handling from mu4e-view.el into its own
mu4e-mime-parts.el
Improve the implementation, updating completions with annotations.
Support "Pick all" for completing attachments and MIME-types.
Both attachment/inline disposition MIME-type with a file name are
considered "attachment" now.
Allow MIME-part actions to target multiple MIME-parts.
In single-window mode, after quitting the view, explicitly restore the
point in the headers view to the last viewed message (just like in split
view mode).
* mu4e/mu4e-headers.el (defcustom mu4e-header-actions): Convert
from defvar. Add action for browsing online archive.
* mu4e/mu4e-view.el (defcustom mu4e-view-actions): Change use of
`seq-filter' to `delq'. Add action for browsing online archive.
So that the type definitions reflects the docstrings more closely. In additon,
fixed warnings from flymake about docstring.
* mu4e/mu4e-draft.el
mu4e-compose-keep-self-cc: should be a comma
* mu4e/mu4e-folders.el
mu4e-maildir-shortcuts: recognize new (plist) format
* mu4e/mu4e-helpers.el
mu4e-debug: removed unnecessary double space in docstring
* mu4e/mu4e-query-items.el
mu4e-query-rewrite-function: prepend "\\=" before column 0 "(" in docstring
* mu4e/mu4e-search.el
mu4e-search-sort-field mu4e-search-sort-direction: used radio in types
* mu4e/mu4e-server.el
mu4e-mu-binary: "mu" executable must exist
* mu4e/mu4e-view.el
mu4e-view-fields: fixed type
mu4e-view-actions: for function refs, prefer "#'" rather than "'"
Without creating some kind of a temporary name (which could then be
trivially renamed by the user as the current instructions say) a new
user trying to learn how to detach a view will run into this error when
switching to a new message after detaching:
[mu4e] Detached view buffer from *mu4e-headers*
funcall-interactively: No buffer named *mu4e-article*<2>
It seems like a good default and less friction to create a random name
automatically when detaching.
If the headers buffer isn't in a live window (e.g., mu4e-split-view
is 'single-window), get-buffer-window will return nil. In turn,
with-selected-window will die if fed a nil window, so default to using the
current window in this case.
This fixes a regression from c23dad7058 that
prevented using n/p from a view buffer.
That restores the classic mu4e style. I.e.,
With default settings, e.g.
case 1: - (1)go to inbox -> (2)see headers -> (3)open message ->
window splits -> (4)read message -> (5)'q' . Window closes and we're
back to (2). All good!
The more complicated step is
case 2: (4) read message -> (5) reply to message -> (6) done
replying -> back to (4) but for some reason when pressing 'q' now,
the window is not closed, but replaced by the headers window (so we
have 2 now. [ I think it should behave just like in case 1 ]
This fixes that.
If `browse-url-handlers` is set `mu4e-action-view-in-xwidget` function
tries to open url in the handler first instead of xwidget. This is
happening because `browse-url` first checks `browse-url-handlers` and
`browse-url-browser-function` after.
Signed-off-by: Aleksei Atavin <axeoman@gmail.com>
Previously, the cursor would be moved to the first html attachment which
would break using mu4e keybindings (e.g. delete). With this change, the
cursor isn't moved at all, presumably the expected behavior.