From 0b99dd5c8cca0db44e9cec997eacc8bab3d75016 Mon Sep 17 00:00:00 2001 From: Mickey Petersen Date: Mon, 12 Dec 2022 18:57:57 +0000 Subject: [PATCH] Preserve `mu4e~headers-view-win' when a search is (re-)executed --- mu4e/mu4e-headers.el | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/mu4e/mu4e-headers.el b/mu4e/mu4e-headers.el index c74bbfdf..f3227f81 100644 --- a/mu4e/mu4e-headers.el +++ b/mu4e/mu4e-headers.el @@ -813,11 +813,17 @@ present, don't do anything." Switch to the output buffer for the results. If IGNORE-HISTORY is true, do *not* update the query history stack." (let* ((buf (mu4e-get-headers-buffer nil t)) + (view-window mu4e~headers-view-win) (inhibit-read-only t) (rewritten-expr (funcall mu4e-query-rewrite-function expr)) (maxnum (unless mu4e-search-full mu4e-search-results-limit))) (with-current-buffer buf + ;; NOTE: this resets all buffer-local variables, including + ;; `mu4e~headers-view-win', which may have a live window if the + ;; headers buffer already exists when `mu4e-get-headers-buffer' + ;; is called. (mu4e-headers-mode) + (setq mu4e~headers-view-win view-window) (unless ignore-history ;; save the old present query to the history list (when mu4e--search-last-query