emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Context menus and mouse-3


From: Eli Zaretskii
Subject: Re: Context menus and mouse-3
Date: Tue, 13 Jul 2021 14:32:19 +0300

> From: Juri Linkov <juri@linkov.net>
> Cc: monnier@iro.umontreal.ca,  philipk@posteo.net,  rms@gnu.org,
>   spacibba@aol.com,  emacs-devel@gnu.org,  arthur.miller@live.com,
>   dgutov@yandex.ru,  ghe@sdf.org,  drew.adams@oracle.com
> Date: Mon, 12 Jul 2021 23:56:39 +0300
> 
> Nowadays every other app uses down-mouse-3 to pop up a context menu,
> but in Emacs mouse-3 operates on the region.  So the solution is
> similar to mouse-1-click-follows-link: to pop up a context menu
> after a delay, otherwise the immediate click operates on the region.

Can't we decide which effect is TRT based on where the user clicks?
Context menus are available only in special places, and it would seem
that setting the region in those places doesn't make sense, by and
large.

And if sometimes we cannot dwim there, how about making the defcustom
you introduced to allow the users to express their preferences in
these problematic cases?

If the above makes sense, I think it's a better solution than forcing
this feature on everyone.  I would be surprised if holding the mouse
button for several hundreds of milliseconds would suddenly produce an
entirely different and unrelated effect, and I'd probably be annoyed
by the need to hold the button when I _know_ I want the context menu.
So it sounds like this implementation is sub-optimal from the get-go,
and we should try looking for a better one.

We could also consider an even more radical solution: an option to
swap mouse-2 and mouse-3.  Because isn't it true that people who
expect context menus to pop up when mouse-3 is pressed generally don't
expect and don't use region-related mouse clicks at all?  (We have
such a "swap-buttons" variable specific to MS-Windows, and I've been
using it for eons, because clicking mouse-2 on a wheeled mouse is very
inconvenient.)

Thanks.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]