xev and certain windows

Ed Greshko Ed.Greshko at greshko.com
Thu Dec 22 02:23:17 UTC 2011


I've not needed to do this for a long time and I thought it works.... 
But, here is the skinny.

If I obtain the window id of, for example, a libre office window, using
xwininfo and then invoke xev with the -id parameter things seem to work
as expected.  For example, pressing "1" in the libre office window
results in:

KeyPress event, serial 16, synthetic NO, window 0x520002f,
    root 0x124, subw 0x0, time 142007296, (357,352), root:(365,375),
    state 0x10, keycode 10 (keysym 0x31, 1), same_screen YES,
    XLookupString gives 1 bytes: (31) "1"
    XmbLookupString gives 1 bytes: (31) "1"
    XFilterEvent returns: False

KeyRelease event, serial 16, synthetic NO, window 0x520002f,
    root 0x124, subw 0x0, time 142007424, (357,352), root:(365,375),
    state 0x10, keycode 10 (keysym 0x31, 1), same_screen YES,
    XLookupString gives 1 bytes: (31) "1"
    XFilterEvent returns: False

However, when doing this with a Firefox, Thunderbird, and Chrome (for
example) it doesn't work.

A key press simply results in

PropertyNotify event, serial 14, synthetic NO, window 0x2000033,
    atom 0x143 (_NET_WM_USER_TIME), time 142233172, state PropertyNewValue

So, how to trace key events in the same manner in those types of windows?


-- 
A common mistake that people make when trying to design something
completely foolproof was to underestimate the ingenuity of complete
fools. -- Douglas Adams in "Mostly Harmless



More information about the users mailing list