|keycode ||if nonzero, the numeric, system-dependent value corresponding to a physical key on the keyboard. Keycode values have no semantic meaning to the end-user, and may depend on the user's hardware and operating environment. They therefore are rarely useful "as-is" to AT clients, unless the client has used operating system services to identify the hardward keycode associated with a particular key symbol. Notifications for key events requested by keycode are less dependent on modifier state than |
keysym based notifications, but some hardware (notably many laptops) may generate more than one keycode for the same physical key, depending on the state of physical shift/modifier keys.
|keysym ||if nonzero, the numeric value corresponding to the X Keysym of the key for which notification is requested. Note that the presence of active modifiers will affect whether notification for key events requested via "keysym" specification takes place, since the keysym depends on the modifier state for most keys. |
|keystring ||if non-NULL, the string value of the inserted characters if the corresponding key event has KeyEvent:is_text set to |
True, or the string representing the 'name' of the key. On X11 systems, the string 'name' of non-printing keysyms corresponds to the values in "keysymdef.h" as provided by Xlib, with the leading "XK_" stripped off.