GNU bug report logs - #42889
28.0.50; make-pointer-invisible t should work also for navigation commands

Previous Next

Package: emacs;

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

Date: Sun, 16 Aug 2020 14:13:02 UTC

Severity: wishlist

Tags: patch

Found in version 28.0.50

Fixed in version 28.1

Done: Stefan Kangas <stefan <at> marxist.se>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 42889 in the body.
You can then email your comments to 42889 AT debbugs.gnu.org in the normal way.

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#42889; Package emacs. (Sun, 16 Aug 2020 14:13:03 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:13:03 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;
 make-pointer-invisible t should work also for navigation commands
Date: Sun, 16 Aug 2020 07:12:54 -0700
Severity: wishlist

Please consider the following feature request:

0. emacs -Q
1. (setq make-pointer-invisible t)
2. M-x customize-group RET RET
3. Move mouse pointer over e.g. "Editing" to highlight it
4. C-n C-p C-f C-b

Result: "Editing" is still highlighted.

Desired result: "Editing" is _not_ highlighted.

It would be good if this could be made to work also for C-v and M-v, and
maybe some others too.


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




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

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: 42889 <at> debbugs.gnu.org
Subject: Re: bug#42889: 28.0.50;
 make-pointer-invisible t should work also for navigation commands
Date: Sun, 16 Aug 2020 17:54:59 +0300
> From: Stefan Kangas <stefan <at> marxist.se>
> Date: Sun, 16 Aug 2020 07:12:54 -0700
> 
> Please consider the following feature request:
> 
> 0. emacs -Q
> 1. (setq make-pointer-invisible t)
> 2. M-x customize-group RET RET
> 3. Move mouse pointer over e.g. "Editing" to highlight it
> 4. C-n C-p C-f C-b
> 
> Result: "Editing" is still highlighted.
> 
> Desired result: "Editing" is _not_ highlighted.

I think it should be very easy to add such a feature, and I'm willing
to help by advice.  Want to give it a try?




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

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

From: Stefan Kangas <stefan <at> marxist.se>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 42889 <at> debbugs.gnu.org
Subject: Re: bug#42889: 28.0.50; make-pointer-invisible t should work also for
 navigation commands
Date: Mon, 17 Aug 2020 15:34:48 +0000
[Message part 1 (text/plain, inline)]
Eli Zaretskii <eliz <at> gnu.org> writes:

>> Please consider the following feature request:
>>
>> 0. emacs -Q
>> 1. (setq make-pointer-invisible t)
>> 2. M-x customize-group RET RET
>> 3. Move mouse pointer over e.g. "Editing" to highlight it
>> 4. C-n C-p C-f C-b
>>
>> Result: "Editing" is still highlighted.
>>
>> Desired result: "Editing" is _not_ highlighted.
>
> I think it should be very easy to add such a feature, and I'm willing
> to help by advice.  Want to give it a try?

Sure, why not?  Thanks for offering to help.

I had a first naive crack at it, and ended up with the attached.  It
covers the commands that often irks me, but it might need some more
adjusting.  I considered exposing this to Lisp, but it seemed better to
do this in the low-level primitives, maybe?

I did find one problem, which is that the mouse cursor disappears when I
scroll using the mouse wheel.  I tried fixing it using a simple
let-binding, but that didn't work for some reason I don't yet understand
(see patch).

Also, is this behaviour suitable as a default or should it be optional?

Best regards,
Stefan Kangas
[make-invisible.diff (text/x-diff, attachment)]

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

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: 42889 <at> debbugs.gnu.org
Subject: Re: bug#42889: 28.0.50; make-pointer-invisible t should work also for
 navigation commands
Date: Mon, 17 Aug 2020 19:56:40 +0300
> From: Stefan Kangas <stefan <at> marxist.se>
> Date: Mon, 17 Aug 2020 15:34:48 +0000
> Cc: 42889 <at> debbugs.gnu.org
> 
> > I think it should be very easy to add such a feature, and I'm willing
> > to help by advice.  Want to give it a try?
> 
> Sure, why not?  Thanks for offering to help.
> 
> I had a first naive crack at it, and ended up with the attached.  It
> covers the commands that often irks me, but it might need some more
> adjusting.  I considered exposing this to Lisp, but it seemed better to
> do this in the low-level primitives, maybe?

Hmm... this won't work on mouse-capable TTY frames, would it?

I actually thought about something more direct: force
note_mouse_highlight return early before highlighting anything, when a
certain variable is non-nil (that variable could be f->pointer_invisible).

> Also, is this behaviour suitable as a default or should it be optional?

Definitely optional, IMO.  But maybe others diagree?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42889; Package emacs. (Tue, 18 Aug 2020 15:23:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: stefan <at> marxist.se
Cc: 42889 <at> debbugs.gnu.org
Subject: Re: bug#42889: 28.0.50;
 make-pointer-invisible t should work also for navigation commands
Date: Tue, 18 Aug 2020 18:21:55 +0300
> Date: Mon, 17 Aug 2020 19:56:40 +0300
> From: Eli Zaretskii <eliz <at> gnu.org>
> Cc: 42889 <at> debbugs.gnu.org
> 
> I actually thought about something more direct: force
> note_mouse_highlight return early before highlighting anything, when a
> certain variable is non-nil (that variable could be f->pointer_invisible).

Btw, please take a look at the variable mouse-highlight: doesn't it
already provide support for the feature being sought here?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42889; Package emacs. (Fri, 27 Aug 2021 17:52:02 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: 42889 <at> debbugs.gnu.org
Subject: Re: bug#42889: 28.0.50; make-pointer-invisible t should work also
 for navigation commands
Date: Fri, 27 Aug 2021 19:51:11 +0200
Stefan Kangas <stefan <at> marxist.se> writes:

> Please consider the following feature request:
>
> 0. emacs -Q
> 1. (setq make-pointer-invisible t)
> 2. M-x customize-group RET RET
> 3. Move mouse pointer over e.g. "Editing" to highlight it
> 4. C-n C-p C-f C-b
>
> Result: "Editing" is still highlighted.
>
> Desired result: "Editing" is _not_ highlighted.

I'm not quite sure I understand this report.  `make-pointer-invisible'
makes the pointer invisible when you type something -- not when you use
point movement commands like `C-n'.  So Emacs seems to be behaving as
intended here.

If I go to the "Search" entry field and type something in the Customize
buffer, then the mouse pointer disappears, and the highlight over
"Editing" also disappears.

(But this is with the current trunk -- perhaps something has been fixed
in the year since this was reported?  Or I might be misunderstanding
something in the recipe.)

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




Added tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Fri, 27 Aug 2021 17:52:02 GMT) Full text and rfc822 format available.

Removed tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sat, 25 Sep 2021 03:07:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42889; Package emacs. (Wed, 20 Oct 2021 14:53:01 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefan <at> marxist.se>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 42889 <at> debbugs.gnu.org
Subject: Re: bug#42889: 28.0.50; make-pointer-invisible t should work also for
 navigation commands
Date: Wed, 20 Oct 2021 07:52:17 -0700
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Stefan Kangas <stefan <at> marxist.se> writes:
>
>> Please consider the following feature request:
>>
>> 0. emacs -Q
>> 1. (setq make-pointer-invisible t)
>> 2. M-x customize-group RET RET
>> 3. Move mouse pointer over e.g. "Editing" to highlight it
>> 4. C-n C-p C-f C-b
>>
>> Result: "Editing" is still highlighted.
>>
>> Desired result: "Editing" is _not_ highlighted.
>
> I'm not quite sure I understand this report.  `make-pointer-invisible'
> makes the pointer invisible when you type something -- not when you use
> point movement commands like `C-n'.  So Emacs seems to be behaving as
> intended here.

You are correct; I want the cursor to be made invisible also with
navigation commands.  The highlighting is jarring here, not least
because I use "unclutter" to hide the mouse cursor automatically after 3
seconds of mouse inactivity.

> If I go to the "Search" entry field and type something in the Customize
> buffer, then the mouse pointer disappears, and the highlight over
> "Editing" also disappears.

Yes, I can reproduce this here.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42889; Package emacs. (Wed, 20 Oct 2021 15:08:01 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefan <at> marxist.se>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 42889 <at> debbugs.gnu.org
Subject: Re: bug#42889: 28.0.50; make-pointer-invisible t should work also for
 navigation commands
Date: Wed, 20 Oct 2021 08:07:32 -0700
[Message part 1 (text/plain, inline)]
tags 42889 + patch
thanks

Eli Zaretskii <eliz <at> gnu.org> writes:

>> Date: Mon, 17 Aug 2020 19:56:40 +0300
>> From: Eli Zaretskii <eliz <at> gnu.org>
>> Cc: 42889 <at> debbugs.gnu.org
>>
>> I actually thought about something more direct: force
>> note_mouse_highlight return early before highlighting anything, when a
>> certain variable is non-nil (that variable could be f->pointer_invisible).
>
> Btw, please take a look at the variable mouse-highlight: doesn't it
> already provide support for the feature being sought here?

Yes, I think it does.  I think this is strictly a documentation bug
then, thanks for pointing it out.

I guess the attached patch should be okay for emacs-28.
[0001-Refer-to-mouse-highlight-from-make-pointer-invisible.patch (text/x-diff, attachment)]

Added tag(s) patch. Request was from Stefan Kangas <stefan <at> marxist.se> to control <at> debbugs.gnu.org. (Wed, 20 Oct 2021 15:08:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42889; Package emacs. (Wed, 20 Oct 2021 16:22:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: 42889 <at> debbugs.gnu.org
Subject: Re: bug#42889: 28.0.50; make-pointer-invisible t should work also for
 navigation commands
Date: Wed, 20 Oct 2021 19:20:26 +0300
> From: Stefan Kangas <stefan <at> marxist.se>
> Date: Wed, 20 Oct 2021 08:07:32 -0700
> Cc: 42889 <at> debbugs.gnu.org
> 
>    DEFVAR_LISP ("make-pointer-invisible", Vmake_pointer_invisible,
>                 doc: /* If non-nil, make mouse pointer invisible while typing.
> -The pointer becomes visible again when the mouse is moved.  */);
> +The pointer becomes visible again when the mouse is moved.
> +
> +When using this, you might also want to disable highlighting of
> +clickable text.  See `mouse-highlight'.  */);

Fine with me, thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#42889; Package emacs. (Wed, 20 Oct 2021 16:41:01 GMT) Full text and rfc822 format available.

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

From: Stefan Kangas <stefan <at> marxist.se>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 42889 <at> debbugs.gnu.org
Subject: Re: bug#42889: 28.0.50; make-pointer-invisible t should work also for
 navigation commands
Date: Wed, 20 Oct 2021 09:40:09 -0700
close 42889 28.1
thanks

Eli Zaretskii <eliz <at> gnu.org> writes:

> Fine with me, thanks.

Thanks, pushed to emacs-28 (commit 7236592668).




bug marked as fixed in version 28.1, send any further explanations to 42889 <at> debbugs.gnu.org and Stefan Kangas <stefan <at> marxist.se> Request was from Stefan Kangas <stefan <at> marxist.se> to control <at> debbugs.gnu.org. (Wed, 20 Oct 2021 16:41:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 18 Nov 2021 12:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 157 days ago.

Previous Next


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