From 0aac98ac25a96f19d007438a5037822b92702594 Mon Sep 17 00:00:00 2001 From: Martin Rudalics Date: Tue, 1 Jan 2013 12:02:14 +0100 Subject: [PATCH] Don't run view-mode-hook twice when calling view-mode (Bug#13315). * view.el (view-mode-enable): New argument run-view-mode-hook. Run view-mode-hook only when it's non-nil (Bug#13315). (view-mode-enter): Call view-mode-enable with run-view-mode-hook argument t. --- lisp/ChangeLog | 7 +++++++ lisp/view.el | 10 ++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 7e9e9d7738e..e4ecda0d789 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2013-01-01 Martin Rudalics + + * view.el (view-mode-enable): New argument run-view-mode-hook. + Run view-mode-hook only when it's non-nil (Bug#13315). + (view-mode-enter): Call view-mode-enable with run-view-mode-hook + argument t. + 2012-12-31 Jürgen Hötzel * net/tramp-adb.el (tramp-adb-maybe-open-connection): Handle errors diff --git a/lisp/view.el b/lisp/view.el index 7ed42bf7ddc..329d3738edc 100644 --- a/lisp/view.el +++ b/lisp/view.el @@ -463,8 +463,9 @@ Entry to view-mode runs the normal hook `view-mode-hook'." :lighter " View" :keymap view-mode-map (if view-mode (view-mode-enable) (view-mode-disable))) -(defun view-mode-enable () - "Turn on View mode." +(defun view-mode-enable (&optional run-view-mode-hook) + "Turn on View mode. +Run `view-mode-hook' when RUN-VIEW-MODE-HOOK is non-nil." ;; Always leave view mode before changing major mode. ;; This is to guarantee that the buffer-read-only variable is restored. (add-hook 'change-major-mode-hook 'view-mode-disable nil t) @@ -482,7 +483,8 @@ Entry to view-mode runs the normal hook `view-mode-hook'." (file-name-nondirectory (buffer-file-name)) (buffer-name))))) (force-mode-line-update) - (run-hooks 'view-mode-hook)) + (when run-view-mode-hook + (run-hooks 'view-mode-hook))) (defun view-mode-disable () "Turn off View mode." @@ -560,7 +562,7 @@ This function runs the normal hook `view-mode-hook'." (setq view-exit-action exit-action)) (unless view-mode - (view-mode-enable) + (view-mode-enable t) (force-mode-line-update) (unless view-inhibit-help-message (message "%s" -- 2.39.5