GNU bug report logs - #66655
29.1; Clicking buttons sometimes doesn't work

Previous Next

Package: emacs;

Reported by: tomasralph2000 <at> gmail.com

Date: Fri, 20 Oct 2023 20:29:01 UTC

Severity: normal

Tags: fixed

Found in version 29.1

Full log


Message #85 received at 66655 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: tomasralph2000 <at> gmail.com, 66655 <at> debbugs.gnu.org
Subject: Re: bug#66655: 29.1; Clicking buttons sometimes doesn't work
Date: Wed, 25 Oct 2023 13:27:31 -0400
> But then we are back at the problem which the buffer-position check
> tries to address:
>
>                        /* Maybe the mouse has moved a lot, caused scrolling, and
>                           eventually ended up at the same screen position (but
>                           not buffer position) in which case it is a drag, not
>                           a click.  */
>
> IOW, just testing the screen coordinates is not enough.

In my "in short is approximately" I used `mouse_has_moved` but that
was an oversimplification: in the new code `mouse_has_moved` doesn't
revert to "false" when the mouse returns to the original position,
contrary to what happen in the current code.

So, no we shouldn't suffer from this problem.

>> The other part of the change is the handling of `EQ (Fcar (start_pos),
>> Fcar (position))` and I must admit I don't know what to do with it, so
>> this part of the change is largely arbitrary: I don't know why we
>> currently check this condition nor why we only check it when mouse has
>> not moved.
>
> I think the comment above explains that, or at least tries to.

The comment above talks about buffer positions (i.e. the Fcar+Fcdr
part of the positions), whereas this `EQ` tests the windows, and the
only relevant comment I see is

    /* Different window */

which reminds the reader that it's comparing windows but doesn't say why.
Did I miss something?


        Stefan





This bug report was last modified 1 year and 232 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.