bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#31692: Emacs sometimes drops key events


From: Michael Heerdegen
Subject: bug#31692: Emacs sometimes drops key events
Date: Tue, 05 Jun 2018 02:59:30 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux)

Eli Zaretskii <eliz@gnu.org> writes:

> Is this in a text-mode frame or a GUI frame?

`aggressive-indent-mode' has been mentioned multiple times (defined in
Gnu Elpa package "aggressive-indent" btw).

I see a combination of `while-no-input' and `sit-for' in
`aggressive-indent--indent-if-changed':

#+begin_src emacs-lisp
(defun aggressive-indent--indent-if-changed ()
  "Indent any region that changed in the last command loop."
  (when aggressive-indent--changed-list
    (save-excursion
      (save-selected-window
        (unless (or (run-hook-wrapped 
'aggressive-indent--internal-dont-indent-if #'eval)
                    (aggressive-indent--run-user-hooks))
          (while-no-input
            (sit-for aggressive-indent-sit-for-time t)
            (redisplay)
            (aggressive-indent--proccess-changed-list-and-indent)))))))
#+end_src

This test function behaves as described if you call it and hit a key
before sit-for has terminated:

(defun test ()
  (interactive)
  (while-no-input
    (sit-for 3))
  (message "Done"))

I then just get a "Quit" - the hitten key, and the (message "Done") call
are skipped.


Michael.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]