(debugging info here comes from looking into a debian bug report: https://bugs.debian.org/764079)
After upgrading to head of xdotool, it looks to me like the key
modifiers aren't being simulated properly when the window is explicitly
specified.
compare the behavior of the following two commands:
xdotool key shift+p
xdotool getactivewindow key shift+p
(for me, the former produces "P", and the latter produces "p")
Below is a diff of xev output from the older version and the newer
version when i do "xdotool key --window $WINDOWID ctrl+p". Notice that
the older version shows:
"state 0x4"
and the newer version shows:
"state 0x0"
--- old 2014-10-06 08:43:41.918471060 -0400
+++ new 2014-10-06 08:42:12.974027608 -0400
@@ -1,30 +1,30 @@
0 dkg@alice:~$ dpkg-query -W xdotool libxdo3
-libxdo3 1:3.20130111.1-5
-xdotool 1:3.20130111.1-5
+libxdo3 1:3.20140805.1-1
+xdotool 1:3.20140805.1-1
0 dkg@alice:~$
-KeyPress event, serial 47, synthetic YES, window 0x8800002,
- root 0xdb506df0, subw 0x0, time 0, (1,1), root:(1,1),
+KeyPress event, serial 44, synthetic YES, window 0x8200002,
+ root 0x0, subw 0x0, time 0, (1,1), root:(1,1),
state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
-KeyPress event, serial 47, synthetic YES, window 0x8800002,
- root 0xdb506df0, subw 0x0, time 0, (1,1), root:(1,1),
- state 0x4, keycode 33 (keysym 0x70, p), same_screen YES,
- XLookupString gives 1 bytes: (10) ""
- XmbLookupString gives 1 bytes: (10) ""
+KeyPress event, serial 47, synthetic YES, window 0x8200002,
+ root 0x0, subw 0x0, time 0, (1,1), root:(1,1),
+ state 0x0, keycode 33 (keysym 0x70, p), same_screen YES,
+ XLookupString gives 1 bytes: (70) "p"
+ XmbLookupString gives 1 bytes: (70) "p"
XFilterEvent returns: False
-KeyRelease event, serial 47, synthetic YES, window 0x8800002,
- root 0xdaf6b540, subw 0x0, time 0, (1,1), root:(1,1),
- state 0x4, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
+KeyRelease event, serial 47, synthetic YES, window 0x8200002,
+ root 0xe32eecc4, subw 0x0, time 0, (1,1), root:(1,1),
+ state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
-KeyRelease event, serial 47, synthetic YES, window 0x8800002,
- root 0xdaf6b540, subw 0x0, time 0, (1,1), root:(1,1),
+KeyRelease event, serial 47, synthetic YES, window 0x8200002,
+ root 0xe32eecc4, subw 0x0, time 0, (1,1), root:(1,1),
state 0x0, keycode 33 (keysym 0x70, p), same_screen YES,
XLookupString gives 1 bytes: (70) "p"
XFilterEvent returns: False
1 dkg@alice:~/src/xdotool$
Jordan, can you replicate this? Any thought about what might be going
wrong?
--dkg
pgptizlzJ36ZE.pgp
Description: PGP signature

