GNOME Bugzilla – Bug 565631
vino server doesn't handle Shift-Tab properly
Last modified: 2009-01-08 14:57:07 UTC
Please describe the problem: Running GnuCash on my display and accessing the display remotely through Vino, if I hit Shift-Tab in an effort to move to the previous field, I am instead moved to the next field, as if I hadn't held down the Shift key at all. When I run xev inside the Vino session and watch what happens when I hit Shift-Tab, what I see is: Shift KeyPress Shift KeyRelease Tab KeyPress Tab KeyRelease Shift KeyPress Note that, I didn't actually let go of the Shift key before hitting Tab, but that's what the events that Vino is sending to the X server say that I did. In a local X session, xev reports this (correct) sequence of events: Shift KeyPress Tab KeyPress Tab KeyRelease Shift KeyRelease I stumbled upon a comment in the Vino source code suggesting that it is trying to be smart about applying the Shift modifier to certain keys, but apparently it isn't smart enough :-). Steps to reproduce: See above. Actual results: See above. Expected results: See above. Does this happen every time? Yes. Other information:
I'd guess it's a client's fault, not server one. Which client are you using? Could you try with another one?
That would be an incorrect guess. It works fine when I launch a vncserver and connect to that with the same client. As I noted when I filed the defect, there is code in vino which explicitly messes around with shift modifiers. That is the code that's presumably at fault. It's not the client.
Confirmed here. Dan, could you please take a look here?
bug 529408 discusses the special-casing needed here; Shift-Tab is an edge case that isn't standardized between different X servers *** This bug has been marked as a duplicate of 529408 ***