GNU bug report logs - #42887
28.0.50; Customize Group doesn't show/hide option on repeated clicking

Previous Next

Package: emacs;

Reported by: Stefan Kangas <stefan <at> marxist.se>

Date: Sun, 16 Aug 2020 14:03:01 UTC

Severity: minor

Tags: patch

Found in version 28.0.50

To reply to this bug, email your comments to 42887 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Sun, 16 Aug 2020 14:03:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Stefan Kangas <stefan <at> marxist.se>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 16 Aug 2020 14:03:02 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefan <at> marxist.se>
To: bug-gnu-emacs <at> gnu.org
Subject: 28.0.50; Customize Group doesn't show/hide option on repeated clicking
Date: Sun, 16 Aug 2020 07:02:22 -0700
Clicking with the mouse to show/hide the options in a custimize group
doesn't handle repeated clicks well.  Steps to reproduce:

0. emacs -Q
1. M-x customize-group RET mouse RET
2. Click the arrow next to an option to expand it
3. [wait a second without moving the mouse cursor]
4. Click again

Result: the option does not expand

Expected result: the option expands


In GNU Emacs 28.0.50 (build 3, x86_64-pc-linux-gnu, GTK+ Version
3.24.20, cairo version 1.16.0)
 of 2020-08-10 built on joffe
Repository revision: 52418648a47b48538c998b1b0a3be8110fff3fdf
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12008000
System Description: Debian GNU/Linux bullseye/sid

Configured using:
 'configure --enable-checking=yes,glyphs --enable-check-lisp-object-type
 'CFLAGS=-O0 -g3'
 PKG_CONFIG_PATH=/home/skangas/usr/lib/pkgconfig:/home/skangas/usr/lib/pkgconfig:'

Configured features:
XPM JPEG TIFF GIF PNG RSVG CAIRO SOUND GPM DBUS GSETTINGS GLIB NOTIFY
INOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF
ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD
JSON PDUMPER LCMS2




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Sun, 16 Aug 2020 14:52:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50;
 Customize Group doesn't show/hide option on repeated clicking
Date: Sun, 16 Aug 2020 17:51:10 +0300
> From: Stefan Kangas <stefan <at> marxist.se>
> Date: Sun, 16 Aug 2020 07:02:22 -0700
> 
> Clicking with the mouse to show/hide the options in a custimize group
> doesn't handle repeated clicks well.  Steps to reproduce:
> 
> 0. emacs -Q
> 1. M-x customize-group RET mouse RET
> 2. Click the arrow next to an option to expand it
> 3. [wait a second without moving the mouse cursor]
> 4. Click again
> 
> Result: the option does not expand
> 
> Expected result: the option expands

Not reproducible here.  I guess this, too, is toolkit-dependent?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Mon, 17 Aug 2020 18:26:01 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefan <at> marxist.se>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Mon, 17 Aug 2020 18:25:44 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

> Not reproducible here.  I guess this, too, is toolkit-dependent?

I can reproduce this also using no toolkit, Lucid and motif.

Best regards,
Stefan Kangas




Severity set to 'minor' from 'normal' Request was from Stefan Kangas <stefan <at> marxist.se> to control <at> debbugs.gnu.org. (Tue, 01 Sep 2020 14:37:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Sat, 05 Sep 2020 12:55:01 GMT) Full text and rfc822 format available.

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

From: Mauro Aranda <maurooaranda <at> gmail.com>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Sat, 5 Sep 2020 09:53:52 -0300
[Message part 1 (text/plain, inline)]
Stefan Kangas <stefan <at> marxist.se> writes:

> Eli Zaretskii <eliz <at> gnu.org> writes:
>
>> Not reproducible here.  I guess this, too, is toolkit-dependent?
>
> I can reproduce this also using no toolkit, Lucid and motif.

I can't reproduce this either.  I used two builds: no-toolkit and GTK3.

Only when I click "too fast" the option doesn't expand, but if I move
the mouse, Emacs highlights a region, so I'm guessing that runs another
command and not the whole widget-button-click command.  Does that happen
to you as well?
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Fri, 13 Nov 2020 23:22:02 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefan <at> marxist.se>
To: Mauro Aranda <maurooaranda <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Fri, 13 Nov 2020 15:20:52 -0800
Mauro Aranda <maurooaranda <at> gmail.com> writes:

> Only when I click "too fast" the option doesn't expand,

That's different from what I'm seeing.  I can wait several seconds
between clicks, and as long as I don't move the mouse cursor the option
won't expand.

> but if I move the mouse, Emacs highlights a region, so I'm guessing
> that runs another command and not the whole widget-button-click
> command.  Does that happen to you as well?

After repeated clicking without moving the mouse, I can sometimes get it
to select a region.  I'm not sure if this is the same as what you're
seeing.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Sat, 14 Nov 2020 04:28:01 GMT) Full text and rfc822 format available.

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

From: tsuucat <tsuucat <at> icloud.com>
To: stefan <at> marxist.se
Cc: 42887 <at> debbugs.gnu.org, maurooaranda <at> gmail.com
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on 
 repeated clicking
Date: Sat, 14 Nov 2020 13:27:32 +0900
I reproduced "when I’m clicking too fast the option doesn't expand" in NS port.

I traced the function widget-button--check-and-call-button and I confirmed that 
this function returns t if  the option doesn't expand.
the function’s (read-event) may be the cause.

--
tsuucat



Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Tue, 17 Nov 2020 11:26:01 GMT) Full text and rfc822 format available.

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

From: Mauro Aranda <maurooaranda <at> gmail.com>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Tue, 17 Nov 2020 08:25:19 -0300
[Message part 1 (text/plain, inline)]
Stefan Kangas <stefan <at> marxist.se> writes:

> Mauro Aranda <maurooaranda <at> gmail.com> writes:
>
>> Only when I click "too fast" the option doesn't expand,
>
> That's different from what I'm seeing.  I can wait several seconds
> between clicks, and as long as I don't move the mouse cursor the option
> won't expand.

I think I misunderstood your recipe.  Does an option that starts as hidden
never expand for you in the recipe?
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Tue, 17 Nov 2020 11:49:01 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefan <at> marxist.se>
To: Mauro Aranda <maurooaranda <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Tue, 17 Nov 2020 03:48:30 -0800
Mauro Aranda <maurooaranda <at> gmail.com> writes:

> Stefan Kangas <stefan <at> marxist.se> writes:
>
>> Mauro Aranda <maurooaranda <at> gmail.com> writes:
>>
>>> Only when I click "too fast" the option doesn't expand,
>>
>> That's different from what I'm seeing.  I can wait several seconds
>> between clicks, and as long as I don't move the mouse cursor the option
>> won't expand.
>
> I think I misunderstood your recipe.  Does an option that starts as hidden
> never expand for you in the recipe?

No, it does expand on the first click.

It will not expand on repeated clicks unless I move the mouse cursor
between clicks.  The delay does not matter (except if I click too fast I
see double-click events).

So I had a quick look, and the defun `custom-toggle-hide-variable' is
called on the first click.  The option then correctly expands.

But that function is not called on subsequent clicks.  After moving the
mouse cursor and clicking, it seems to register again and
`custom-toggle-hide-variable' is called.

This is what I used to test this:

diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index d1077d367d..86235f9fc0 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -2796,11 +2796,14 @@ custom-variable-value-create
 	  (custom-add-parent-links widget))
 	(custom-add-see-also widget)))))

+(defvar count 0)
 (defun custom-toggle-hide-variable (visibility-widget &rest _ignore)
   "Toggle the visibility of a `custom-variable' parent widget.
 By default, this signals an error if the parent has unsaved
 changes.  If the parent has a `simple' :custom-style property,
 the present value is saved to its :shown-value property instead."
+  (message "Click %s" count)
+  (setq count (1+ count))
   (let ((widget (widget-get visibility-widget :parent)))
     (unless (eq (widget-type widget) 'custom-variable)
       (error "Invalid widget type"))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Tue, 17 Nov 2020 12:08:01 GMT) Full text and rfc822 format available.

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

From: Mauro Aranda <maurooaranda <at> gmail.com>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Tue, 17 Nov 2020 09:07:28 -0300
[Message part 1 (text/plain, inline)]
Stefan Kangas <stefan <at> marxist.se> writes:

> Mauro Aranda <maurooaranda <at> gmail.com> writes:
>
>> Stefan Kangas <stefan <at> marxist.se> writes:
>>
>>> Mauro Aranda <maurooaranda <at> gmail.com> writes:
>>>
>>>> Only when I click "too fast" the option doesn't expand,
>>>
>>> That's different from what I'm seeing.  I can wait several seconds
>>> between clicks, and as long as I don't move the mouse cursor the option
>>> won't expand.
>>
>> I think I misunderstood your recipe.  Does an option that starts as
hidden
>> never expand for you in the recipe?
>
> No, it does expand on the first click.
>
> It will not expand on repeated clicks unless I move the mouse cursor
> between clicks.  The delay does not matter (except if I click too fast I
> see double-click events).

Then I definitely can't reproduce this.  Does it happen with mouse-1 and
mouse-2? I think you didn't mention that in your recipe.

> So I had a quick look, and the defun `custom-toggle-hide-variable' is
> called on the first click.  The option then correctly expands.
>
> But that function is not called on subsequent clicks.  After moving the
> mouse cursor and clicking, it seems to register again and
> `custom-toggle-hide-variable' is called.

custom-toggle-hide-variable is the :action function for the widget you
are clicking.  It should be called if
widget-button--check-and-call-button detects a mouse-1 or mouse-2 event
at that widget.  AFAIK, there are 2 reasons why it doesn't
call the :action function: either it gets a mouse-1 event and then a
mouse-movement event, returning t, or it doesn't think the button where
the mouse click ended is the same button where the mouse click started.
I.e., this evaluates to nil:
(and pos (eq (get-char-property pos 'button) button))
In this case, widget-button--check-and-call-button will return nil.

I suspect the former happens and not the latter, but I can't be sure.
Maybe you can test what's the return value of
widget-button--check-and-call-button.
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Mon, 07 Feb 2022 01:17:02 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Mon, 07 Feb 2022 02:15:57 +0100
Stefan Kangas <stefan <at> marxist.se> writes:

> Clicking with the mouse to show/hide the options in a custimize group
> doesn't handle repeated clicks well.  Steps to reproduce:
>
> 0. emacs -Q
> 1. M-x customize-group RET mouse RET
> 2. Click the arrow next to an option to expand it
> 3. [wait a second without moving the mouse cursor]
> 4. Click again
>
> Result: the option does not expand
>
> Expected result: the option expands

I'm unable to reproduce this in Emacs 29 on Debian/bullseye.  Are you
still seeing this problem?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Mon, 07 Feb 2022 03:20:02 GMT) Full text and rfc822 format available.

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

From: Po Lu <luangruo <at> yahoo.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 42887 <at> debbugs.gnu.org, Stefan Kangas <stefan <at> marxist.se>
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Mon, 07 Feb 2022 11:19:33 +0800
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> I'm unable to reproduce this in Emacs 29 on Debian/bullseye.  Are you
> still seeing this problem?

FWIW, I see a related problem: if I double click on the arrow, the
option doesn't open and then close as one would expect.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Mon, 07 Feb 2022 03:43:02 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Po Lu <luangruo <at> yahoo.com>
Cc: 42887 <at> debbugs.gnu.org, Stefan Kangas <stefan <at> marxist.se>
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Mon, 07 Feb 2022 04:42:29 +0100
Po Lu <luangruo <at> yahoo.com> writes:

>> I'm unable to reproduce this in Emacs 29 on Debian/bullseye.  Are you
>> still seeing this problem?
>
> FWIW, I see a related problem: if I double click on the arrow, the
> option doesn't open and then close as one would expect.

Double-clicking isn't supposed to do anything on these, I think?  Just
single clicks.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Thu, 26 May 2022 05:51:01 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefan <at> marxist.se>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Thu, 26 May 2022 01:50:18 -0400
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Stefan Kangas <stefan <at> marxist.se> writes:
>
>> Clicking with the mouse to show/hide the options in a custimize group
>> doesn't handle repeated clicks well.  Steps to reproduce:
>>
>> 0. emacs -Q
>> 1. M-x customize-group RET mouse RET
>> 2. Click the arrow next to an option to expand it
>> 3. [wait a second without moving the mouse cursor]
>> 4. Click again
>>
>> Result: the option does not expand
>>
>> Expected result: the option expands
>
> I'm unable to reproduce this in Emacs 29 on Debian/bullseye.  Are you
> still seeing this problem?

Yes.  I just tested this again on master, and I can reproduce this
consistently.  It happens on repeated clicks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Thu, 26 May 2022 11:04:01 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Thu, 26 May 2022 13:03:18 +0200
Stefan Kangas <stefan <at> marxist.se> writes:

> Yes.  I just tested this again on master, and I can reproduce this
> consistently.  It happens on repeated clicks.

Hm...  if I click fast, then I get some double-down-mouse-1
double-mouse-1 events -- is that what you're seeing?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Mon, 11 Sep 2023 13:36:01 GMT) Full text and rfc822 format available.

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

From: Mauro Aranda <maurooaranda <at> gmail.com>
To: Stefan Kangas <stefankangas <at> gmail.com>, 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Mon, 11 Sep 2023 10:34:55 -0300
I don't know why I couldn't reproduce it three years ago, but I managed
to do that now, I think.

Could you please check if the following change to
widget-button-release-event-p fixes this for you?

(defun widget-button-release-event-p (event)
  "Non-nil if EVENT is a mouse-button-release event object."
  (and (eventp event)
       (memq (event-basic-type event) '(mouse-1 mouse-2 mouse-3))
       (seq-some (lambda (el)
                   (memq el '(click drag triple double)))
                 (event-modifiers event))))


Please do try it with mouse-1 and mouse-2 if you can.

(I know that the mark gets set with repeating clicks with mouse-1,
and there's a signal with mouse-2, but I'm focusing on whether this
changes fixes the detection of repeated clicks)





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Mon, 11 Sep 2023 18:03:01 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefankangas <at> gmail.com>
To: Mauro Aranda <maurooaranda <at> gmail.com>, 42887 <at> debbugs.gnu.org
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Mon, 11 Sep 2023 11:01:49 -0700
Mauro Aranda <maurooaranda <at> gmail.com> writes:

> I don't know why I couldn't reproduce it three years ago, but I managed
> to do that now, I think.
>
> Could you please check if the following change to
> widget-button-release-event-p fixes this for you?
>
> (defun widget-button-release-event-p (event)
>    "Non-nil if EVENT is a mouse-button-release event object."
>    (and (eventp event)
>         (memq (event-basic-type event) '(mouse-1 mouse-2 mouse-3))
>         (seq-some (lambda (el)
>                     (memq el '(click drag triple double)))
>                   (event-modifiers event))))
>
>
> Please do try it with mouse-1 and mouse-2 if you can.
>
> (I know that the mark gets set with repeating clicks with mouse-1,
> and there's a signal with mouse-2, but I'm focusing on whether this
> changes fixes the detection of repeated clicks)

Thanks.

I don't currently have convenient access to the machine where I can
reproduce this, and it will be at least another couple of weeks until I
do.  Apologies in advance if it takes a while before I can review this.

If someone else can reproduce and this patch fixes it for them, that
works too.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Mon, 11 Sep 2023 19:22:01 GMT) Full text and rfc822 format available.

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

From: Mauro Aranda <maurooaranda <at> gmail.com>
To: Stefan Kangas <stefankangas <at> gmail.com>, 42887 <at> debbugs.gnu.org
Cc: luangruo <at> yahoo.com, Eli Zaretskii <eliz <at> gnu.org>,
 Lars Ingebrigtsen <larsi <at> gnus.org>, tsuucat <at> icloud.com
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Mon, 11 Sep 2023 16:20:53 -0300
On 11/9/23 15:01, Stefan Kangas wrote:
> Mauro Aranda <maurooaranda <at> gmail.com> writes:
>
>> I don't know why I couldn't reproduce it three years ago, but I managed
>> to do that now, I think.
>>
>> Could you please check if the following change to
>> widget-button-release-event-p fixes this for you?
>>
>> (defun widget-button-release-event-p (event)
>>    "Non-nil if EVENT is a mouse-button-release event object."
>>    (and (eventp event)
>>         (memq (event-basic-type event) '(mouse-1 mouse-2 mouse-3))
>>         (seq-some (lambda (el)
>>                     (memq el '(click drag triple double)))
>>                   (event-modifiers event))))
>>
>>
>> Please do try it with mouse-1 and mouse-2 if you can.
>>
>> (I know that the mark gets set with repeating clicks with mouse-1,
>> and there's a signal with mouse-2, but I'm focusing on whether this
>> changes fixes the detection of repeated clicks)
>
> Thanks.
>
> I don't currently have convenient access to the machine where I can
> reproduce this, and it will be at least another couple of weeks until I
> do.  Apologies in advance if it takes a while before I can review this.

OK, no problem, of course.  There are other bugs to focus in the
meantime :-).

> If someone else can reproduce and this patch fixes it for them, that
> works too.

I see I failed to CC people that participated in this report. Sorry,
doing that now.  For reproducing, the recipe given by Stefan is pretty
good, but I would like to add that in my experience is better to make
the repeated clicks as if you wanted to double click, but maybe not so
fast.

Try to not move the mouse, and if the option doesn't toggle, wait.
There might be something in the echo area like:
double-down-mouse-1 double-mouse-1-





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Fri, 14 Mar 2025 11:57:01 GMT) Full text and rfc822 format available.

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

From: Mauro Aranda <maurooaranda <at> gmail.com>
To: 42887 <at> debbugs.gnu.org, Po Lu <luangruo <at> yahoo.com>
Cc: Lars Ingebrigtsen <larsi <at> gnus.org>, Eli Zaretskii <eliz <at> gnu.org>,
 Stefan Kangas <stefankangas <at> gmail.com>, tsuucat <at> icloud.com
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Fri, 14 Mar 2025 08:55:54 -0300
[Message part 1 (text/plain, inline)]
Mauro Aranda <maurooaranda <at> gmail.com> writes:

> On 11/9/23 15:01, Stefan Kangas wrote:
>> Mauro Aranda <maurooaranda <at> gmail.com> writes:
>>
>>> I don't know why I couldn't reproduce it three years ago, but I managed
>>> to do that now, I think.
>>>
>>> Could you please check if the following change to
>>> widget-button-release-event-p fixes this for you?
>>>
>>> (defun widget-button-release-event-p (event)
>>>    "Non-nil if EVENT is a mouse-button-release event object."
>>>    (and (eventp event)
>>>         (memq (event-basic-type event) '(mouse-1 mouse-2 mouse-3))
>>>         (seq-some (lambda (el)
>>>                     (memq el '(click drag triple double)))
>>>                   (event-modifiers event))))
>>>
>>>
>>> Please do try it with mouse-1 and mouse-2 if you can.
>>>
>>> (I know that the mark gets set with repeating clicks with mouse-1,
>>> and there's a signal with mouse-2, but I'm focusing on whether this
>>> changes fixes the detection of repeated clicks)
>>
>> Thanks.
>>
>> I don't currently have convenient access to the machine where I can
>> reproduce this, and it will be at least another couple of weeks until I
>> do.  Apologies in advance if it takes a while before I can review this.
>

I've improved my fix for this bug, so that it doesn't produce weird
highlights when double clicking a button.

The patch touches a very tricky part of wid-edit.el.  I've been testing
it for a while now, mostly with Customize and some packages of my own.
I haven't found many problems, but I figure it might need some testing
in the outside world.

Furthermore, I don't understand touchscreen commands and I don't have a
way of testing them.  Po Lu, could you please check if the handling of
touchscreen commands are still correct after splitting the functionality
between the down event and the up event?
[0001-Improve-click-handling-in-buffers-with-widgets.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Sat, 22 Mar 2025 08:42:01 GMT) Full text and rfc822 format available.

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

From: Mauro Aranda <maurooaranda <at> gmail.com>
To: 42887 <at> debbugs.gnu.org
Cc: Po Lu <luangruo <at> yahoo.com>, Lars Ingebrigtsen <larsi <at> gnus.org>,
 Eli Zaretskii <eliz <at> gnu.org>, tsuucat <at> icloud.com,
 Stefan Kangas <stefankangas <at> gmail.com>
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Sat, 22 Mar 2025 05:41:14 -0300
[Message part 1 (text/plain, inline)]
On 14/3/25 08:55, Mauro Aranda wrote:
>
> I've improved my fix for this bug, so that it doesn't produce weird
> highlights when double clicking a button.
>
> The patch touches a very tricky part of wid-edit.el.  I've been testing
> it for a while now, mostly with Customize and some packages of my own.
> I haven't found many problems, but I figure it might need some testing
> in the outside world.
>

I've added documentation changes.  New patch attached.
[0001-Improve-click-handling-in-buffers-with-widgets.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Sat, 22 Mar 2025 11:10:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Mauro Aranda <maurooaranda <at> gmail.com>
Cc: luangruo <at> yahoo.com, 42887 <at> debbugs.gnu.org, larsi <at> gnus.org,
 tsuucat <at> icloud.com, stefankangas <at> gmail.com
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Sat, 22 Mar 2025 13:09:02 +0200
> Date: Sat, 22 Mar 2025 05:41:14 -0300
> From: Mauro Aranda <maurooaranda <at> gmail.com>
> Cc: Lars Ingebrigtsen <larsi <at> gnus.org>, Eli Zaretskii <eliz <at> gnu.org>,
>  Stefan Kangas <stefankangas <at> gmail.com>, tsuucat <at> icloud.com,
>  Po Lu <luangruo <at> yahoo.com>
> 
> @@ -847,15 +848,26 @@ Widgets and the Buffer
>  
>  @kindex mouse-2 @r{(on button widgets})
>  @item mouse-2
> +@itemx mouse-1
>  @findex widget-button-click
>  @deffn Command widget-button-click @var{event}

That @findex entry is redundant, since @deffn automatically creates an
index entry for its argument function.

> -In case the mouse-click is on a widget, calls the function stored in
> -the @code{:mouse-down-action} property.
> +@kindex down-mouse-1 @r{(on button widgets)}
> +@item down-mouse-1
> +@itemx down-mouse-2
> +@findex widget-down-mouse
> +@deffn Command widget-down-mouse @var{event}

Likewise here.

Thanks.




Added tag(s) patch. Request was from Stefan Kangas <stefankangas <at> gmail.com> to control <at> debbugs.gnu.org. (Sat, 22 Mar 2025 11:11:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Sun, 23 Mar 2025 13:51:04 GMT) Full text and rfc822 format available.

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

From: Mauro Aranda <maurooaranda <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: luangruo <at> yahoo.com, 42887 <at> debbugs.gnu.org, larsi <at> gnus.org,
 tsuucat <at> icloud.com, stefankangas <at> gmail.com
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Sun, 23 Mar 2025 10:50:24 -0300
[Message part 1 (text/plain, inline)]
On 22/3/25 08:09, Eli Zaretskii wrote:
>> Date: Sat, 22 Mar 2025 05:41:14 -0300
>> From: Mauro Aranda <maurooaranda <at> gmail.com>
>> Cc: Lars Ingebrigtsen <larsi <at> gnus.org>, Eli Zaretskii <eliz <at> gnu.org>,
>>  Stefan Kangas <stefankangas <at> gmail.com>, tsuucat <at> icloud.com,
>>  Po Lu <luangruo <at> yahoo.com>
>>
>> @@ -847,15 +848,26 @@ Widgets and the Buffer
>>
>>  @kindex mouse-2 @r{(on button widgets})
>>  @item mouse-2
>> +@itemx mouse-1
>>  @findex widget-button-click
>>  @deffn Command widget-button-click @var{event}
>
> That @findex entry is redundant, since @deffn automatically creates an
> index entry for its argument function.
>
>> -In case the mouse-click is on a widget, calls the function stored in
>> -the @code{:mouse-down-action} property.
>> +@kindex down-mouse-1 @r{(on button widgets)}
>> +@item down-mouse-1
>> +@itemx down-mouse-2
>> +@findex widget-down-mouse
>> +@deffn Command widget-down-mouse @var{event}
>
> Likewise here.
>
> Thanks.

Thanks Eli.  Fixed those redundant entries.
[0001-Improve-click-handling-in-buffers-with-widgets.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42887; Package emacs. (Sat, 29 Mar 2025 10:47:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Mauro Aranda <maurooaranda <at> gmail.com>
Cc: luangruo <at> yahoo.com, 42887 <at> debbugs.gnu.org, larsi <at> gnus.org,
 tsuucat <at> icloud.com, stefankangas <at> gmail.com
Subject: Re: bug#42887: 28.0.50; Customize Group doesn't show/hide option on
 repeated clicking
Date: Sat, 29 Mar 2025 13:46:42 +0300
> Date: Sun, 23 Mar 2025 10:50:24 -0300
> Cc: 42887 <at> debbugs.gnu.org, larsi <at> gnus.org, stefankangas <at> gmail.com,
>  tsuucat <at> icloud.com, luangruo <at> yahoo.com
> From: Mauro Aranda <maurooaranda <at> gmail.com>
> 
> On 22/3/25 08:09, Eli Zaretskii wrote:
>  >> Date: Sat, 22 Mar 2025 05:41:14 -0300
>  >> From: Mauro Aranda <maurooaranda <at> gmail.com>
>  >> Cc: Lars Ingebrigtsen <larsi <at> gnus.org>, Eli Zaretskii <eliz <at> gnu.org>,
>  >>  Stefan Kangas <stefankangas <at> gmail.com>, tsuucat <at> icloud.com,
>  >>  Po Lu <luangruo <at> yahoo.com>
>  >>
>  >> @@ -847,15 +848,26 @@ Widgets and the Buffer
>  >>
>  >>  @kindex mouse-2 @r{(on button widgets})
>  >>  @item mouse-2
>  >> +@itemx mouse-1
>  >>  @findex widget-button-click
>  >>  @deffn Command widget-button-click @var{event}
>  >
>  > That @findex entry is redundant, since @deffn automatically creates an
>  > index entry for its argument function.
>  >
>  >> -In case the mouse-click is on a widget, calls the function stored in
>  >> -the @code{:mouse-down-action} property.
>  >> +@kindex down-mouse-1 @r{(on button widgets)}
>  >> +@item down-mouse-1
>  >> +@itemx down-mouse-2
>  >> +@findex widget-down-mouse
>  >> +@deffn Command widget-down-mouse @var{event}
>  >
>  > Likewise here.
>  >
>  > Thanks.
> 
> Thanks Eli.  Fixed those redundant entries.

LGTM, thanks.




This bug report was last modified 80 days ago.

Previous Next


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