You are not logged in.
Hi!
Can anyone help me with understanding mechanism of X keyboard shortcuts and tools that are relevant?
Is there a way to list applications that wait for shortcut from X and shortcuts they want? I looked through x11-utils, did not find any relevant stuff.
I'm talking about one level below DE-specific shortcut daemons, which from this point of view are just another applications that listen for specific events.
Offline
found this:
xdotool key "XF86LogGrabInfo"
But it gives empty list, despite running openbox, parcellite, goldendict: all listening for their global shortcuts.
[240435.991] (II) Printing all currently active device grabs:
[240435.992] (II) End list of active device grabs
Offline
From what I can tell, XF86LogGrabInfo only lists an active grab, i.e., it does not list which applications are listening for a shortcut combo, rather which combo was activated and by which application.
Example,
[ 13358.845] (II) Printing all currently active device grabs:
[ 13358.846] Active grab 0x40e04847 (core) on device 'Virtual core keyboard' (3):
[ 13358.846] client pid 1277 i3
[ 13358.846] at 13358815 (from passive grab) (device thawed, state 1)
[ 13358.846] core event mask 0x3
[ 13358.846] passive grab type 2, detail 0xa, activating key 10
[ 13358.846] owner-events false, kb 1 ptr 0, confine 0, cursor 0x0
[ 13358.846] (II) End list of active device grabs
It was difficult getting this to log. I did
$ sleep 2; xdotool key "XF86LogGrabInfo"
and then continuously pressed the logged key combo in i3, till I got it to appear in the log.
Edit: I figured a better way to get the keys to log:
watch -n 0.1 xdotool key "XF86LogGrabInfo"
Last edited by x33a (2014-04-13 08:51:35)
Offline
yes, active menus are producing grabs too...
Well, then the question is: how to list passive grabs and their owners?
There is one-by-one hack described here: http://askubuntu.com/questions/406543/u … nshot-area
xdotool keydown "shift+Print"; xdotool key "XF86LogGrabInfo"; xdotool keyup "Print"; sleep 1; xdotool keyup "shift"; tail /var/log/Xorg.0.log
I'm trying to find less dirty solution...
Offline