Bug 19365

Summary: Some keys don't work in Xephyr or Xnest
Product: xorg Reporter: Denis Dzyubenko <denis.dzyubenko>
Component: Server/DDX/XephyrAssignee: Matthew Allum <mallum>
Status: RESOLVED INVALID QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: 6khRTwRnE3AB, binary, db.pub.mail, greenrd, sascha-web-bugs.freedesktop.org
Version: 7.4 (2008.09)   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Denis Dzyubenko 2009-01-02 00:58:17 UTC
Some keyboard buttons like arrow keys, home/end/pgup/pgdown  don't do how they should in Xephyr - the keycode is right, but the keysym isn't.

Here is the xev output on the host machine:

KeyPress event, serial 31, synthetic NO, window 0x4200001,
    root 0x13b, subw 0x0, time 946428876, (262,-139), root:(269,702),
    state 0x10, keycode 111 (keysym 0xff52, Up), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

and here what I get inside Xephyr:

KeyPress event, serial 26, synthetic NO, window 0x400001,
    root 0x9d, subw 0x0, time 946389628, (177,179), root:(179,181),
    state 0x10, keycode 111 (keysym 0xff61, Print), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

starting Xephyr with -kb option solves the problem so I suspect the problem is with evdev and the way Xephyr treats the keyboard.

Tried the latest Xorg and Xephyr from git however the problem is still there.
Comment 1 Peter Hutterer 2009-01-06 13:59:04 UTC
This is because Xephyr seems to be using the base XKB ruleset and the host
machine the evdev ruleset. They need to have the same keycode-keysym table,
otherwise the codes get mixed up.

 
Comment 2 Sascha Silbe 2009-02-12 05:20:59 UTC
Is there a way to configure Xephyr to use the same bindings as the host?
For sugar-emulator, using -kb will cause the keyboard not to work at all, so there's no workaround for this issue.
Comment 3 Sascha Silbe 2009-03-13 08:47:31 UTC
There's a patch for evdev support from 2006 (!) at [1]. I wonder why it never got applied upstream...


[1] http://cvs.mandriva.com/cgi-bin/viewvc.cgi/SPECS/x11-server/0010-Xephyr-evdev-support.txt?revision=1.1
Comment 4 Peter Hutterer 2009-03-31 16:42:54 UTC
(In reply to comment #3)
> There's a patch for evdev support from 2006 (!) at [1]. I wonder why it never
> got applied upstream...

I guess because it mixes a number of different things into one patch. There's evdev stuff and randr (?) code in the same patch, and they have nothing to do with each other.

splitting the patch up into the two semantic changes would help with the review.

Comment 5 Lee Leahu 2009-10-15 09:25:40 UTC
This also seems to be affecting Xdms too 
Latest Git Commit 22b38f513c93c2f2aea5909878c3c9acae7d35c1 (xorg-server)
Comment 6 dave b 2010-10-21 19:18:24 UTC
Can we get this bug fixed :/ This is really annoying...
What can I do to help out?
Comment 7 Sergey Dobrov 2011-10-06 08:17:13 UTC
The same bug for me. Gentoo, x86_64.
Comment 8 Julien Cristau 2011-10-06 10:03:03 UTC
(In reply to comment #6)
> Can we get this bug fixed :/ This is really annoying...
> What can I do to help out?

Send a patch to xorg-devel.
Comment 9 Adam Jackson 2018-06-12 18:43:51 UTC
Mass closure: This bug has been untouched for more than six years, and is not obviously still valid. Please file a new report if you continue to experience issues with a current server.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.