From: Lars Ingebrigtsen Date: Wed, 21 Aug 2019 20:18:47 +0000 (-0700) Subject: Call `quit-window-hook' in the `quit-window' command only X-Git-Tag: emacs-27.0.90~1328^2~147 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=2e8bbd5881d8851f19c8eb0b60def932d69b4dbc;p=emacs.git Call `quit-window-hook' in the `quit-window' command only * lisp/window.el (quit-restore-window): Don't run quit-window-hook here... (quit-window): ... but here instead. Callers that call the former programmatically can decide themselves whether to call the hook. (quit-window-hook): Fix doc string. --- diff --git a/lisp/window.el b/lisp/window.el index 80dbd64f18a..334b56c8e60 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -4849,7 +4849,7 @@ all window-local buffer lists." (unrecord-window-buffer window buffer))))) (defcustom quit-window-hook nil - "Hook run before performing any other actions in the `quit-buffer' command." + "Hook run before performing any other actions in the `quit-window' command." :type 'hook :version "27.1" :group 'windows) @@ -4882,11 +4882,7 @@ nil means to not handle the buffer in a particular way. This most reliable remedy to not have `switch-to-prev-buffer' switch to this buffer again without killing the buffer. -`kill' means to kill WINDOW's buffer. - -The functions in `quit-window-hook' will be run before doing -anything else." - (run-hooks 'quit-window-hook) +`kill' means to kill WINDOW's buffer." (setq window (window-normalize-window window t)) (let* ((buffer (window-buffer window)) (quit-restore (window-parameter window 'quit-restore)) @@ -4986,6 +4982,7 @@ one. If non-nil, reset `quit-restore' parameter to nil. The functions in `quit-window-hook' will be run before doing anything else." (interactive "P") + (run-hooks 'quit-window-hook) (quit-restore-window window (if kill 'kill 'bury))) (defun quit-windows-on (&optional buffer-or-name kill frame)