GNOME Bugzilla – Bug 149257
clicking on menu border should not dismiss the menu
Last modified: 2018-02-10 03:39:35 UTC
Clicking on menu border should simply keep the menu visible.
Created attachment 30195 [details] Menu with exaggerated borders for testing.
Created attachment 30365 [details] [review] Proposed fix Here's an attempt to prevent menu deactivation when button release event occurs inside the menu shell but outside any menu item.
Bug 61843 has discussion about extending the border area to activate the menuitems instead, to make gnome-panel menu items an easy target. (The menu is next to screen border.) However, I don't think that behavior makes as much sense for application or context menus, because those menus are generally away from the screen border. In this case making the border area inactive seems more appropriate to me.
I wouldn't mind a 'make border inactive' patch going in until bug 61843 can be fixed, but such a patch would have to preserve the 'hold mouse down for .5 seconds' behavior. It doesn't look like this one does.
No, and it would seem the patch fails miserably with context menus.
Bug 147497 is another related bug. The problem there is that menus will just stay up if you drag select and release within MENU_SHELL_TIMEOUT seconds. If we ignore bug 61843 for now, the behavior should be something like: - button down; mouse NOT moving out of the gtk-drag-threshold area; button up: if this sequence happens within .5 seconds, leave the menu up. if mouse up happens more than .5 seconds later, dismiss the menu. - button down, move out of gtk-drag-threshold area, button up: if above a selectable menu item, select it if above a border or unselectable menu item, leave menu up if above something else (get_event_widget() == NULL) if more than k pixels away from mouse-down point remove menu else leave menu up where k is on the order of 50 pixels - when the menu has been left up after a button release, clicks on a border or unselectable item should not dismiss the menu. Clicks outside the menu should dismiss. Clicks on a selectable item should select it. Of course this needs to be tried out. I could very well have missed something, especially wrt. combo menus where the pointer starts inside a menu item.
Is this bug #423761?
We're moving to gitlab! As part of this move, we are closing bugs that haven't seen activity in more than 5 years. If this issue is still imporant to you and still relevant with GTK+ 3.22 or master, please consider creating a gitlab issue for it.