Subject: Re: bug#32257: 26.1; read-multiple-choice inf loops on mouse clicks

From: Andy Moreton <[email-masked]>
Date: Tue, 31 Jul 2018 20:26:33 +0100

On Tue 31 Jul 2018, Eli Zaretskii wrote:

>> From: Andy Moreton <[email-masked]>
>> Date: Tue, 31 Jul 2018 12:59:37 +0100
>> 
>> > Another possibility is to use read-char-exclusive which only changes
>> > ERROR_NON_ASCII to 0.  The downside is that when there are mouse clicks
>> > it prints the events into the minibuffer, covering the prompt (but
>> > typing "?"  still works to restore the prompt).
>> 
>> AS you have done, I read the implementation and tried a patch using
>> `read-char-exclusive'. The result is unusable as the printed events
>> obscure the original question.
>
> I think "unusable" is an exaggeration, since you can recover the
> prompt.  And the result is definitely better than the current
> situation, where you just get stuck.

No. It is is just as unusable, as the only way to get past the stream of
event message hiding the question you are trying to answer is to hit ^G
until it goes away. Using `read-char-exclusive' does not make any improvement on the
original problem.

We already have a working patch that solves the original problem.

>> The proper long term fix for this is to make read-multiple-choice use a
>> dedicated buffer rather than the minibuffer, and give better visibility
>> when more than one question is asked in succession. Perhaps also some
>> way to stop the echo area from obscuring the minibuffer ?
>
> The echo-area messages are fine, but we should have a feature that
> allows to suppress echoing the mouse clicks.

They are a pain if you are asked more than one question, but the echo
area message gets in the way of the minibuffer prompt that you need to
read in order to answer the question.

    AndyM