GNOME Bugzilla – Bug 618094
Menu blocks all input when shown
Last modified: 2010-05-08 11:25:37 UTC
I wonder why no one has ever spotted this problem before (because it isn't fixed yet as far as I see, if it's fixed in 2.19 or later releases, let me know, please). When the menu is pulled down (whether it is a popup or main menu, doesn't matter) all mouse (clicks only, cursor moving works) and keyboard input blocks for entire Xorg. The only solution (when app which menu is shown hangs forever) is to switch to tty1 (Ctrl+Alt+F1) and kill this app. GTK+ really should not restrict mouse/keyboard input to the single menu when it's pulled down. Some GTK+ apps hangs sometimes and it's really annoying to switch to console just to kill one app. Even when the program works fine, I can't for example switch between windows using Alt+Tab while any menu is dropped down. All system hotkeys just blocked because of one menu of one program. Well, Qt expirience the same problem, by the way, but for me GTK+ is much more useful.
A working example: gcalctool&; sleep 5; killall -STOP gcalctool When gcalc appears, right-click in the working field. A standart copy-paste menu will appear. Wait for 5 seconds till the application hangs and voila — nothing works. You should switch to tty and killall -9 gcalctool (or killall -CONT gcalctool if you want to continue the execution). This sample simulate application hang which may occure in real GTK+ working environment.
Confirm. This is very annoying behavior. Also it making impossible such actions as screenshotting of any menus, and much more actions depended on hotkeys. I really believed that such bug already filled for a long time.
grabbing the keyboard is how gtk+ implements key navigation in menus. there is no likely chance this will ever change - as "annoying" it may be. *** This bug has been marked as a duplicate of bug 100903 ***
I can confirm this too. If a GTK+ application hangs with a menu popped up, whole display becomes unusable (because of keyboard and pointer grabs).
(In reply to comment #3) > grabbing the keyboard is how gtk+ implements key navigation in menus. there is > no likely chance this will ever change - as "annoying" it may be. > > *** This bug has been marked as a duplicate of bug 100903 *** Is grabbing the pointer so necessary?
May be there is a chance to make an option to turn keyboard navigation off at compiling stage? I guess it's not so hard to implement and may be more important for some people to have working system hotkeys and less annoying behavior when app hangs than to use keys to chose menu items?
(In reply to comment #5) > > *** This bug has been marked as a duplicate of bug 100903 *** > > Is grabbing the pointer so necessary? please, read bug 100903. (In reply to comment #6) > May be there is a chance to make an option to turn keyboard navigation off at > compiling stage? no. > I guess it's not so hard to implement you guessed wrong.