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

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

bug#29478: [Patch] bug#29478: 26.0.90; `C-h k' followed by mouse clicks


From: Stefan Monnier
Subject: bug#29478: [Patch] bug#29478: 26.0.90; `C-h k' followed by mouse clicks no longer shows down event
Date: Sun, 24 Dec 2017 10:41:55 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux)

>> What do you guys think?
> It's a long patch.  Any chance of you giving a brief summary of what it
> does and what it's for, how it differs from what's already there, and so
> on?

The core part is `help-read-key-sequence` which is changed to:

    Return a list of elements of the form (SEQ . RAW-SEQ), where SEQ is a key
    sequence, and RAW-SEQ is its untranslated form.
    If NO-MOUSE-MOVEMENT is non-nil, ignore key sequences starting
    with `mouse-movement' events."

and which just keeps calling read-key-sequence as long as:

              ;; Read at least one key-sequence.
              (or (null key-list)
                  ;; After a down event, also read the (presumably) following
                  ;; up-event.
                  (memq 'down last-modifiers)
                  ;; After a click, see if a double click is on the way.
                  (and (memq 'click last-modifiers)
                       (not (sit-for (/ double-click-time 1000.0) t))))

So when you do `C-h k` followed by a triple click,
help-read-key-sequence will can return a list of 6 elements (3 down
events and 3 up events).

describe-key(-briefly) are changed to just loop over all the key
sequences returned.

> It's also refreshing to see a context diff every now and then.  :-)

The new code share too little with the old code, so I found the unified
diff unreadable.


        Stefan





reply via email to

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