Mercurial > emacs
changeset 77831:03efa2eaa3b7
(table--point-entered-cell-function)
(table--point-left-cell-function): Bind
`inhibit-point-motion-hooks' to t.
author | Martin Rudalics <rudalics@gmx.at> |
---|---|
date | Tue, 29 May 2007 06:12:54 +0000 |
parents | e686ba4e7a34 |
children | d72a09075aae |
files | lisp/textmodes/table.el |
diffstat | 1 files changed, 15 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/textmodes/table.el Tue May 29 02:16:17 2007 +0000 +++ b/lisp/textmodes/table.el Tue May 29 06:12:54 2007 +0000 @@ -5333,21 +5333,25 @@ (defun table--point-entered-cell-function (&optional old-point new-point) "Point has entered a cell. Refresh the menu bar." - (unless table-cell-entered-state - (setq table-cell-entered-state t) - (setq table-mode-indicator t) - (force-mode-line-update) - (table--warn-incompatibility) - (run-hooks 'table-point-entered-cell-hook))) + ;; Avoid calling point-motion-hooks recursively. + (let ((inhibit-point-motion-hooks t)) + (unless table-cell-entered-state + (setq table-cell-entered-state t) + (setq table-mode-indicator t) + (force-mode-line-update) + (table--warn-incompatibility) + (run-hooks 'table-point-entered-cell-hook)))) (defun table--point-left-cell-function (&optional old-point new-point) "Point has left a cell. Refresh the menu bar." - (when table-cell-entered-state - (setq table-cell-entered-state nil) - (setq table-mode-indicator nil) - (force-mode-line-update) - (run-hooks 'table-point-left-cell-hook))) + ;; Avoid calling point-motion-hooks recursively. + (let ((inhibit-point-motion-hooks t)) + (when table-cell-entered-state + (setq table-cell-entered-state nil) + (setq table-mode-indicator nil) + (force-mode-line-update) + (run-hooks 'table-point-left-cell-hook)))) (defun table--warn-incompatibility () "If called from interactive operation warn the know incompatibilities.