emacs: Simplify MIME part command implementation
authorAustin Clements <amdragon@MIT.EDU>
Thu, 30 May 2013 01:13:46 +0000 (21:13 -0400)
committerDavid Bremner <bremner@debian.org>
Sat, 1 Jun 2013 01:01:02 +0000 (22:01 -0300)
commit1546387d723ec47cd281f3c2bf6da2fddf18c045
treef573d6e051d797f8e15bba472b79f301c6c21f6f
parent04725cfbe5a8905651b3f6a4dcf1f3dce9a085e1
emacs: Simplify MIME part command implementation

This unifies the part button actions and the underlying part action
functions into single interactive command that simply applies to the
part containing point using the just-added part p-list text property
instead of button properties.  Since all part actions can be performed
by applying the appropriate mm function to an mm-handle, this patch
abstracts out the creation of mm handles, making the implementations
of the part commands trivial.  This also eliminates our special
handling for part save in favor of using the appropriate mm function.

This necessarily modifies the way we handle the default part button
action, but in a way that does not change the meaning of the
notmuch-show-part-button-default-action defcustom.

Since these commands are no longer specific to buttons, this patch
eliminates the extra metadata stored with each button.  This also
eliminates one rather special-purpose macro for a collection of
general purpose part handling utilities.
emacs/notmuch-show.el
test/emacs