Closed Bug 123582 Opened 24 years ago Closed 14 years ago

Menus should capture the mouse

Categories

(Core :: XUL, defect)

x86
Windows 2000
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: mkaply, Unassigned)

Details

I've been looking at some menu issues on OS/2 and I discovered that there seems to be a flaw in the menu design on Windows. When a menu is popped down, the mouse should be captured so that all subsequent mouse messages can allow the application to dismiss the menu and still pass the message on to the other window. To see this, popup down a menu in Mozilla, then click on the system menu. Notice it doesn't display. Currently, nsWindow.cpp relies on focus and activation messages to make the menu go away. It still needs to check focus for keyboard task switching, but menus should capture the mouse for the purpose of making menus disappear.
Any progress here ? I think this should be marked OS=All, or at least this happens on Linux as well. See bug 117986, and bug 38484.
Michael, do you have a suggested way of doing this?
On the DOM context menu event, we could call capture mouse on the front end. And then dismiss the menu on any subsequent click event.
You can really notice this feature if you're reading a web page, and lazily bring up the right-click menu, then decide to forget about the menu and click on a link you're interested in. The mouse event gets consumed and you go nowhere. You may think the program had some sort of error. You need to re-click (and sometimes re-home in on the link). Kinda irritating.
Component: XP Toolkit/Widgets: Menus → XUL
QA Contact: jrgmorrison → xptoolkit.widgets
Assignee: hyatt → nobody
This is working now
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.