contrib: pick: slightly tweak running search and pick from pick buffer

Previously running search or pick from the pick buffer did not close
the message pane (if open). This meant that then new search ends up in
a very small window. Fix this so that the message pane is
shut. However, make it so that the pane is shut after the search
string is entered in case the user is basing the search on something
in the current message.
This commit is contained in:
Mark Walters 2012-12-08 12:44:34 +00:00 committed by David Bremner
parent 47693539a6
commit da6d66e286

View file

@ -175,8 +175,8 @@
(define-key map "?" 'notmuch-help) (define-key map "?" 'notmuch-help)
(define-key map "a" 'notmuch-pick-archive-message-then-next) (define-key map "a" 'notmuch-pick-archive-message-then-next)
(define-key map "=" 'notmuch-pick-refresh-view) (define-key map "=" 'notmuch-pick-refresh-view)
(define-key map "s" 'notmuch-search) (define-key map "s" 'notmuch-pick-to-search)
(define-key map "z" 'notmuch-pick) (define-key map "z" 'notmuch-pick-to-pick)
(define-key map "m" 'notmuch-pick-new-mail) (define-key map "m" 'notmuch-pick-new-mail)
(define-key map "f" 'notmuch-pick-forward-message) (define-key map "f" 'notmuch-pick-forward-message)
(define-key map "r" 'notmuch-pick-reply-sender) (define-key map "r" 'notmuch-pick-reply-sender)
@ -289,6 +289,25 @@ Does NOT change the database."
(interactive) (interactive)
(notmuch-pick-tag "-")) (notmuch-pick-tag "-"))
;; The next two functions close the message window before searching or
;; picking but they do so after the user has entered the query (in
;; case the user was basing the query on something in the message
;; window).
(defun notmuch-pick-to-search ()
"Run \"notmuch search\" with the given `query' and display results."
(interactive)
(let ((query (notmuch-read-query "Notmuch search: ")))
(notmuch-pick-close-message-window)
(notmuch-search query)))
(defun notmuch-pick-to-pick ()
"Run a query and display results in experimental notmuch-pick mode"
(interactive)
(let ((query (notmuch-read-query "Notmuch pick: ")))
(notmuch-pick-close-message-window)
(notmuch-pick query)))
;; This function should be in notmuch-hello.el but we are trying to ;; This function should be in notmuch-hello.el but we are trying to
;; minimise impact on the rest of the codebase. ;; minimise impact on the rest of the codebase.
(defun notmuch-pick-from-hello (&optional search) (defun notmuch-pick-from-hello (&optional search)