From: Lars Ingebrigtsen Date: Sat, 12 Feb 2022 07:40:30 +0000 (+0100) Subject: Improve interaction between track-mouse and edebug X-Git-Tag: emacs-29.0.90~2364 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=c4da0d331291d531dddc08e7fef1548e638c4663;p=emacs.git Improve interaction between track-mouse and edebug * lisp/emacs-lisp/edebug.el (edebug--display-1): Work around `track-mouse' oddity (bug#675). --- diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el index 1720393b3e5..a7e71d2ed24 100644 --- a/lisp/emacs-lisp/edebug.el +++ b/lisp/emacs-lisp/edebug.el @@ -2577,6 +2577,13 @@ See `edebug-behavior-alist' for implementations.") ;; Let's at least show a backtrace so the user can figure out ;; which function we're talking about. (debug)) + ;; If we're in a `track-mouse' setting, then any previous mouse + ;; movements will make `input-pending-p' later return true. So + ;; discard the inputs in that case. (And `discard-input' doesn't + ;; work here.) + (when track-mouse + (while (input-pending-p) + (read-event))) ;; Setup windows for edebug, determine mode, maybe enter recursive-edit. ;; Uses local variables of edebug-enter, edebug-before, edebug-after ;; and edebug-debugger.