unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Ergus <spacibba@aol.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org, juri@linkov.net
Subject: Re: New Context Menu
Date: Wed, 18 Aug 2021 19:17:53 +0200	[thread overview]
Message-ID: <20210818171753.5pi2sugllugncfew@Ergus> (raw)
In-Reply-To: <83tujm518i.fsf@gnu.org>

On Wed, Aug 18, 2021 at 04:30:37PM +0300, Eli Zaretskii wrote:
>> Date: Wed, 18 Aug 2021 14:43:09 +0200
>> From: Ergus <spacibba@aol.com>
>> Cc: juri@linkov.net, emacs-devel@gnu.org
>>
>> >> Maybe this is ask for too much, but I am wondering that once the context
>> >> menu will be released with emacs 28, then a lot of packages will try to
>> >> implement such a functionality in a hacky way with advises/hooks and so
>> >> on and they won't get properly maintained.
>> >
>> >I don't see how this can be worked around in a hook, because TTY menus
>> >are implemented entirely in C.
>> >
>> Users and external developers may try their best it this annoys them
>> enough.
>
>Yes, but there are limits to that.  Like the speed of light, for
>example.
>
>> >> In case the user wants to bind the context menu without using the mouse
>> >> how can be done? Will the context-menu appear in the current cursor
>> >> (point) or in the current mouse arrow position?
>> >
>> >We could do something similar to what we do when the user presses F10
>> >on a TTY frame.
>> >
>> On tty the F10 menu opens in the minibuffer.
>
>??? It does not!  I just tried.  Are you trying in "emacs -Q"?
>
>> It would be better if we can just show the same menu than with the
>> mouse instead
>
>That's what F10 is supposed to do.

Ahh sorry, I tried that from a real TTY ;). Now I get your point. Yes,
that's what I want.
>
>> because it appears in place, closer to where the user is editing.
>
>If you want the menu to be dropped close to point, you need to tell
>the menu code where that is, it by default expects to get that from
>the event which triggered it, and that only works with mouse clicks,
>not with keyboard keys.  In the implementation of F10, we use some
>trick to do something similar, but since that opens the menu-bar menu,
>the location of point is not very relevant, so we use something else.
>

Passing the point location shouldn't be too hard; maybe it only requires
an extra condition when the "event" is not a "mouse event" use the point
location. On tty some time ago that was an issue because the menu used
to open always in the middle... but now it is fixed.

>> >> I know the context menu without mouse is a bit pointless
>> >
>> >Why pointless? menus work on TTY frames without a mouse just fine, you
>> >can move and select using the keyboard.
>> >
>> But context menu it more mouse-oriented in general because it is a need
>> specially for more mouse oriented users. Why to do something like F10 +
>> arrow + arrow + Enter: when you can do just M-w?
>
>Because menus are self-explanatory, whereas M-w requires that you
>remember it?
>
>> Or why to use arrows if just used the mouse to activate the menu?
>
>Because you don't have a mouse to begin with? or because you don't
>want to move your fingers from the keyboard?  The usual reasons, IOW.
>



  reply	other threads:[~2021-08-18 17:17 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20210818120834.i3orh535tb2enpos.ref@Ergus>
2021-08-18 12:08 ` New Context Menu Ergus
2021-08-18 12:26   ` Eli Zaretskii
2021-08-18 12:43     ` Ergus
2021-08-18 13:30       ` Eli Zaretskii
2021-08-18 17:17         ` Ergus [this message]
2021-08-18 17:21           ` Eli Zaretskii
2021-08-18 17:32             ` Ergus
2021-08-18 16:50       ` Eli Zaretskii
2021-08-18 18:10         ` Ergus
2021-08-18 18:17           ` Eli Zaretskii
2021-08-18 19:23             ` Ergus
2021-08-18 19:28               ` Eli Zaretskii
2021-08-18 19:53                 ` Ergus
2021-08-19  6:31                   ` Eli Zaretskii
2021-08-19  7:07                     ` Juri Linkov
2021-08-18 19:34               ` Eli Zaretskii
2021-08-18 18:58         ` Juri Linkov
2021-08-18 19:12           ` Eli Zaretskii
2021-08-19  7:05             ` Juri Linkov
2021-08-19  7:51               ` Eli Zaretskii
2021-08-20  7:13                 ` Juri Linkov
2021-08-20 11:26                   ` Eli Zaretskii
2021-08-20 11:41                     ` Eli Zaretskii
2021-08-20 16:44                       ` Juri Linkov
2021-08-20 12:26                     ` Ergus
2021-08-20 12:36                       ` Eli Zaretskii
2021-08-20 12:59                         ` Ergus
2021-08-20 13:03                         ` Ergus
2021-08-20 13:34                           ` Eli Zaretskii
2021-08-20 17:36                             ` Ergus
2021-08-20 18:05                               ` Eli Zaretskii
2021-08-20 18:08                                 ` Ergus
2021-08-20 19:07                                   ` Eli Zaretskii
2021-08-21  6:20                                     ` Ergus
2021-08-21  6:53                                       ` Eli Zaretskii
2021-08-21 15:04                                         ` Ergus
2021-08-20 18:15                                 ` Ergus
2021-08-20 23:15                                   ` Michael Welsh Duggan
2021-08-18 14:04   ` Jean-Christophe Helary
2021-08-18 16:38     ` Iñigo Serna
2021-08-19  0:38       ` Jean-Christophe Helary
2021-08-19  7:08         ` Juri Linkov
2021-08-19 14:22           ` Jean-Christophe Helary
2021-08-19  7:01   ` Juri Linkov
2021-08-19  8:03     ` Eli Zaretskii
2021-08-19 14:11       ` Ergus
2021-08-19 15:48         ` Eli Zaretskii
2021-08-19 16:34           ` Yuri Khan
2021-08-20  7:14       ` Juri Linkov
2021-08-20 11:29         ` Eli Zaretskii
2021-08-20 16:49           ` Juri Linkov
2021-08-20 18:01             ` Eli Zaretskii
2021-08-23  7:33               ` Juri Linkov
2021-08-23 11:36                 ` Eli Zaretskii
2021-08-23 16:04                   ` Juri Linkov
2021-08-23 16:35                     ` Eli Zaretskii
2021-08-23 17:42                       ` Juri Linkov
2021-08-23 18:02                         ` Ergus
2021-08-24  6:35                           ` Juri Linkov
2021-08-24  8:00                             ` Ergus
2021-08-24 11:44                               ` Yuri Khan
2021-08-24 16:05                                 ` Ergus
2021-08-24 19:41                                   ` Yuri Khan
2021-08-24 20:48                                     ` Ergus
2021-08-19 13:57     ` Ergus
2021-08-20  7:24       ` Juri Linkov
2021-08-20 12:21         ` Ergus
2021-08-20 16:41           ` Juri Linkov
2021-08-21  4:33             ` Ergus via Emacs development discussions.
2021-08-22  8:56               ` Juri Linkov
2021-08-27  6:21   ` New Context Menu and mouse-1 Juri Linkov
2021-08-27  6:55     ` Eli Zaretskii
2021-08-27 17:03       ` Juri Linkov
2021-08-27 22:01         ` Stefan Monnier
2021-08-28 18:52           ` Juri Linkov
2021-08-29 16:53           ` Juri Linkov
2021-08-30  7:22             ` Juri Linkov
2021-08-30 12:54               ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210818171753.5pi2sugllugncfew@Ergus \
    --to=spacibba@aol.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=juri@linkov.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).