Mercurial > emacs
changeset 110347:b4971a8966f0
* repeat.el (repeat): Allow repeating when the last event is a click.
Suggested by Drew Adams (bug#6256).
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Sat, 11 Sep 2010 20:23:45 +0200 |
parents | 05bd64a0d747 |
children | facbb9773cf5 |
files | lisp/ChangeLog lisp/repeat.el |
diffstat | 2 files changed, 11 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Sat Sep 11 15:25:48 2010 +0200 +++ b/lisp/ChangeLog Sat Sep 11 20:23:45 2010 +0200 @@ -1,3 +1,8 @@ +2010-09-11 Stefan Monnier <monnier@iro.umontreal.ca> + + * repeat.el (repeat): Allow repeating when the last event is a click. + Suggested by Drew Adams (bug#6256). + 2010-09-11 Sascha Wilde <wilde@sha-bang.de> * vc/vc-hg.el (vc-hg-state,vc-hg-working-revision):
--- a/lisp/repeat.el Sat Sep 11 15:25:48 2010 +0200 +++ b/lisp/repeat.el Sat Sep 11 20:23:45 2010 +0200 @@ -335,7 +335,12 @@ (setq real-last-command 'repeat) (setq repeat-undo-count 1) (unwind-protect - (while (eq (read-event) repeat-repeat-char) + (while (let ((evt (read-event))) ;FIXME: read-key maybe? + ;; For clicks, we need to strip the meta-data to + ;; check the underlying event name. + (eq (or (car-safe evt) evt) + (or (car-safe repeat-repeat-char) + repeat-repeat-char))) (repeat repeat-arg)) ;; Make sure `repeat-undo-count' is reset. (setq repeat-undo-count nil))