GNOME Bugzilla – Bug 737181
Accessible input events missing for bound media-keys
Last modified: 2021-07-05 14:47:13 UTC
Steps to reproduce: 1. Use gnome-control-center to unbind a media key (e.g. calculator) 2. Launch xev or an accessible-event listener[*] 3. Press bound media keys 4. Press the newly-unbound media key Results: No events are logged by xev or the listener for the bound keys; only the unbound keys. I'm guessing that g-s-d is the one consuming them. If I'm wrong, apologies. ~~~~~~~~~~~ [*] Something like: #!/usr/bin/python3 import pyatspi def onKeyPressOrRelease(event): print("onKeyPressOrRelease: %s" % event) pyatspi.Registry.registerKeystrokeListener( onKeyPressOrRelease, mask=list(range(256)), kind=(pyatspi.KEY_PRESSED_EVENT, pyatspi.KEY_RELEASED_EVENT)) pyatspi.Registry.start()
Is this a new bug?
(In reply to comment #1) > Is this a new bug? From what this Orca user states [1], I'd say yes. But I just set up a Fedora 20 VM and it's present there (GNOME 3.10). Then I set up a Fedora 19 VM and it's present there too (GNOME 3.8). So I'm not sure about the user's experience, but from where I'm sitting it's not new. [1] https://mail.gnome.org/archives/orca-list/2014-September/msg00428.html
Keys are captured by mutter/gnome-shell, not by gnome-settings-daemon.
I don't understand what this code is supposed to do though. The key is captured and already used for a function. What's the use of logging it? Knowing the function has been called?
(In reply to comment #4) > I don't understand what this code is supposed to do though. The key is captured > and already used for a function. What's the use of logging it? Knowing the > function has been called? Not quite, at least not in this particular instance. It's knowing what key has been pressed for the purpose of presenting the key label. One of the things Orca's "learn mode" does is speak (and consume) key presses so that a user can figure out the layout of their keyboard without changing their environment during the discovery process. This feature is not limited to media keys but, if you think about it, it's especially needed for media keys because media key placement is not standardized. And even if one did want to play keyboard roulette [1], and took the time to set things up to do so [2], it's not immediately obvious from the function that gets called what key was just pressed: Did the player stop because I found the Pause key, or was it the Stop key, or did I find the next/previous track key and there is no next/previous track? Nothing seemed to happen, I wonder why (brightness increase/decrease, keyboard backlight toggle). Lastly, as a related example use case, on my laptop F1 through F12 are media keys. To get the F1 through F12 functionality, one must uses the Fn modifier. Were I blind, trying to figure out why, say, F2 wasn't letting me rename stuff as expected would suck. Orca's "learn mode" would at least make it possible for me to immediately ascertain that someone at HP needs to be fired. ;) [1] "Discovering" the Suspend key or the Wifi toggle key [2] E.g. launch a media player, point it to something with multiple tracks
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/ Thank you for your understanding and your help.