GNOME Bugzilla – Bug 682244
Legacy tray icon menus no longer work (gnote, dropbox, skype)
Last modified: 2015-03-07 05:53:38 UTC
Now that the new message tray has landed I got it running on my main laptop and I noticed the gnote icon no longer works; I can click on it but no menu ever happens (using a keyboard shortcut brings the gnote menu correctly). Is this some bug, particular to gnote, or has support for "legacy" tray icons been removed?
*** Bug 682250 has been marked as a duplicate of this bug. ***
Right-clicking of the icon itself (or left-clicking, fwiw) won't work directly, because the message tray has a grab now. Left-clicking still works because the event is synthesized, probably right-click was lost somewhere.
But left clicking, when the action is to popup a menu (like in gnote) doesn't work (because the menu also wants a grab).
Correct. Now that the message tray is modal, it's impossible for anything else to take the grab. There's no way to fix this other than to remove gnome-shell from taking a grab and focusing a special dummy window instead, like we've discussed in the past.
As a least-effort workaround, could we drop the grab and close the messagetray on any click on a legacy icon ? That should allow the menu to be displayed (albeit with the icon already beyond the horizon again) ?
Created attachment 223088 [details] [review] MessageTray: escape the tray when a legacy icon is clicked Legacy tray icons may want to take a pointer grab to show a popup menu, and this is incompatible with message tray modality. To solve this, escape the tray when forwarding clicks to the tray icons, and wait for the input mode change to actually synthetize the X event.
Review of attachment 223088 [details] [review]: Definitely better then non working menus. Seems to work fine with Skype and code looks good to me.
The right click menus from the icons in the system tray only work in the overview mode, but they are shown in the desktop mode. http://farm9.staticflickr.com/8445/7906327460_659e1f5e65_o.png
Comment on attachment 223088 [details] [review] MessageTray: escape the tray when a legacy icon is clicked Attachment 223088 [details] pushed as eb351b1 - MessageTray: escape the tray when a legacy icon is clicked Let's keep this open until we find a better solution
In 3.16, legacy tray icons got a dedicated tray that doesn't use a grab, so menus work as expected now.