[Top][All Lists]

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

RE: when to bind *down-mouse* vs *mouse*?

From: Drew Adams
Subject: RE: when to bind *down-mouse* vs *mouse*?
Date: Wed, 8 Dec 2004 11:06:21 -0800

    Assume an environment where you can press mouse-down, and a popup-menu
    appears.  Keeping the mouse button pressed, move to the menu entry you
    want to pick and release the mouse button.  This kind of behaviour is
    possible for some systems (eg. xman for X11).  Binding a menu to
    mouse-up would make this menu unusable on these systems.  The menu
    won't appear unless you release the mouse, but it will disappear as
    soon as you release the mouse...  That's why I think we want
    mouse-down for popups.

I guess you are saying that there are some platforms where popup menus must
be opened on down-mouse*; they don't play well with just mouse* (mouse-up).
If that is the case, then I suppose you are right that opening popup menus
should be bound to down-mouse* and not mouse* - in order to work on all

Assuming this, we've identified these contexts so far for down-mouse* vs
mouse* binding recommendations for users:

 1. when clicking a sensitive area (button, link) to trigger an action -
bind mouse* (so the user can change his mind after mouse-down and move away
to cancel the action)

 2. when the position of the mouse action is important (and not case 1) -
bind down-mouse* (e.g. yank text where button is pressed)

 3. opening popup menus - bind down-mouse* (to work correctly on problem
platforms, as mentioned above)

Do others agree with these guidelines? Are there others?

I think that whatever guidelines we can agree on should find their way into
the Emacs doc, to promote consistency in Lisp libraries.

 - Drew

reply via email to

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