all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
To: <7802@debbugs.gnu.org>
Subject: bug#7802: bug #7802: 24.0.50; Extraneous `mouse-3' event when do `double-mouse-3'
Date: Fri, 7 Jan 2011 11:38:25 -0800	[thread overview]
Message-ID: <AAEBC42BCCB3485EA3B4019BFAA5EF88@us.oracle.com> (raw)
In-Reply-To: <7EB632A3268149CA89DA1D58C8046A01@us.oracle.com>

> `mouse-3' will always be handled before the command bound to
> `double-mouse-3' is invoked.  So in general that command
> can do nothing to undo what the `mouse-3' command did.

What's more, you cannot even design the single-click command so that it someow
detects the situation and turns itself into a no-op, to get out of the way.
There is of course no way for it to know whether the following event is a
double-click event.

> "Therefore, you must design the command binding of the double 
> click event..." means nothing in the general case.  No matter
> how that command or its binding is "designed", the command is
> invoked too late to do anything, in general, about
> what the single-click command has already done.

Likewise wrt designing the single-click command.  How could you fix
`mouse-save-then-kill', for instance, to not do anything if the following event
is `double-mouse-3'?

Exercise: Design a command for `double-mouse-3' that will not let
`mouse-save-then-kill' first do its thing when you (just) double-click.  You can
even rewrite `mouse-save-then-kill' if that will help.

E.g., have `double-mouse-3' bound to a command that pops up a menu.  Try having
it not also delete the region if you first use `double-mouse-1' `mouse-3' to
select text.

> This is not great, IMO.

Sounds to me like this "design" is just a side effect of the implementation.
The doc tries to make a virtue out of the necessity that results from the
implementation - by claiming "convenience".  What it really should say is "This
is a sorry state of affairs; apologies."

But I hope instead of a doc workaround that this bug can actually be fixed...






  reply	other threads:[~2011-01-07 19:38 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-07 19:11 bug#7802: 24.0.50; Extraneous `mouse-3' event when do `double-mouse-3' Drew Adams
2011-01-07 19:20 ` bug#7802: bug #7802: " Drew Adams
2011-01-07 19:38   ` Drew Adams [this message]
2011-01-08  5:03     ` Stefan Monnier
2011-01-08  6:36       ` Drew Adams
2011-01-08 16:01         ` Jason Rumney
2011-01-08 17:22           ` Drew Adams
2011-01-09  3:34             ` Jason Rumney
2011-01-09 14:18               ` Drew Adams
2011-01-13  5:35               ` Chong Yidong
2011-01-13  7:15                 ` Drew Adams
2011-01-15  3:29                   ` Chong Yidong
2011-08-08 18:45                     ` Drew Adams
2011-08-08 20:52                       ` Chong Yidong
2011-01-13 17:32                 ` Stefan Monnier
2011-01-08 19:50 ` grischka

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

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

  git send-email \
    --in-reply-to=AAEBC42BCCB3485EA3B4019BFAA5EF88@us.oracle.com \
    --to=drew.adams@oracle.com \
    --cc=7802@debbugs.gnu.org \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.