# HG changeset patch # User Nick Roberts # Date 1175235098 0 # Node ID 293d8ec25f859da3b984882f483b5cfd710392c8 # Parent aac76e7c087c42313d997a110d999a627163b2e1 (tmm-menubar): Select the right menu item with the mouse. (tmm-prompt): Don't make the mouse user select the first menu item twice. diff -r aac76e7c087c -r 293d8ec25f85 lisp/tmm.el --- a/lisp/tmm.el Fri Mar 30 06:11:13 2007 +0000 +++ b/lisp/tmm.el Fri Mar 30 06:11:38 2007 +0000 @@ -74,13 +74,13 @@ (let ((tail menu-bar) this-one (column 0)) - (while (and tail (< column x-position)) + (while (and tail (<= column x-position)) (setq this-one (car tail)) - (if (and (consp (car tail)) - (consp (cdr (car tail))) - (stringp (nth 1 (car tail)))) + (if (and (consp this-one) + (consp (cdr this-one)) + (stringp (nth 1 this-one))) (setq column (+ column - (length (nth 1 (car tail))) + (length (nth 1 this-one)) 1))) (setq tail (cdr tail))) (setq menu-bar-item (car this-one)))) @@ -210,21 +210,24 @@ (setq history (append history history history history)) (setq tmm-c-prompt (nth (- history-len 1 index-of-default) history)) (add-hook 'minibuffer-setup-hook 'tmm-add-prompt) - (save-excursion - (unwind-protect - (setq out - (completing-read - (concat gl-str " (up/down to change, PgUp to menu): ") - tmm-km-list nil t nil - (cons 'history (- (* 2 history-len) index-of-default)))) - (save-excursion - (remove-hook 'minibuffer-setup-hook 'tmm-add-prompt) - (if (get-buffer "*Completions*") - (progn - (set-buffer "*Completions*") - (use-local-map tmm-old-comp-map) - (bury-buffer (current-buffer))))) - )))) + (if default-item + (setq out (car (nth index-of-default tmm-km-list))) + (save-excursion + (unwind-protect + (setq out + (completing-read + (concat gl-str + " (up/down to change, PgUp to menu): ") + tmm-km-list nil t nil + (cons 'history + (- (* 2 history-len) index-of-default)))) + (save-excursion + (remove-hook 'minibuffer-setup-hook 'tmm-add-prompt) + (if (get-buffer "*Completions*") + (progn + (set-buffer "*Completions*") + (use-local-map tmm-old-comp-map) + (bury-buffer (current-buffer)))))))))) (setq choice (cdr (assoc out tmm-km-list))) (and (null choice) (> (length out) (length tmm-c-prompt))