Subject: RE: bug#7802: bug #7802: 24.0.50; Extraneous `mouse-3' event when do `double-mouse-3'

From: "Drew Adams" <[email-masked]>
Date: Sun, 9 Jan 2011 06:18:55 -0800

> > Are you saying that a Windows program _cannot_ bind a 
> > double-click mouse-2 or mouse-3?
> 
> Yes. If they want to handle double clicks of mouse-2 and mouse-3, or
> triple clicks of any mouse button then they need to handle it 
> themselves

So they _can_ bind them.

> the same way that Emacs does.

So it's not even a design decision, but the only possibility?
The Emacs way is the only way? ;-)

> > How about variable `double-click-time'
> 
> 500ms is already a perceptable delay. And some users with 
> motor control difficulties may set it much longer.  If we did
> this I have no doubt that YOU would be complaining about the
> response time of mouse click events.

Try and see.  In Emacs we can put such things under the control of the
individual user.  It should be possible to use both approaches, with a user
option deciding.  Once implemented it should be easy enough to conditionally
ignore the timeout and get the current behavior.

> > (BTW, shouldn't Emacs on Windows pick up this user setting as the
> > default value for `double-click-time'?)
> 
> I don't know if this setting is exposed to programs, as the 
> intention is for Windows to use it internally when generating
> double click events.  If it is exposed, then yes it would be
> good to use for the initial value of double-click-time.

I know nothing about whether it is exposed, but a quick google shows it might
be.  I see, for example, references to functions GetDoubleClickTime and
SetDoubleClickTime.  (Hm, the Emacs name is also `double-click-time'...)

http://msdn.microsoft.com/en-us/library/ms646258(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/ms646263(v=vs.85).aspx

http://www.pinvoke.net/default.aspx/user32/getdoubleclicktime.html?diff=y
http://www.jasinskionline.com/windowsapi/ref/s/setdoubleclicktime.html