Bug 25262

Summary: USB keyboard settings are lost when I (dis&re)connect it
Product: xorg Reporter: monnier
Component: Input/KeyboardAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED WONTFIX QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: peter.hutterer
Version: 7.4 (2008.09)   
Hardware: Other   
OS: All   
i915 platform: i915 features:

Description monnier 2009-11-24 09:41:11 UTC
disconnecting my USB keyboard and reconnecting it causes the repeat rate, and xmodmap settings to be reset to their defaults.

Normally, I don't often disconnect and reconnect this keyboard, except that hibernating has the same effect, and I do hibernate this machine on a regular basis.
Comment 1 Peter Hutterer 2009-11-26 21:29:40 UTC
how did you configure everything?
Comment 2 monnier 2009-11-27 07:54:08 UTC
> how did you configure everything?

Not sure what configuration you mean, but it's a Debian testing system.
The xorg.conf file is mostly empty.  The keyboard settings are set with
xmodmap and "xset r".

Comment 3 Peter Hutterer 2009-11-29 16:01:16 UTC
sorry, this is a WONTFIX (or rather a CANTFIX).

X has two types of devices, master devices and slave devices. slave devices are the physical keyboards and they dictate the layout. events from slave devices are routed through the master device - core applications only ever see events from these master devices (or "core devices").

If you have two phys. keyboards, one may be configured with layout "us", one with layout "de". Depending on which keyboard you type on, the master device will change layout to accommodate for the slave device. if you change anything with xset or xmodmap, you're changing the master device. This setting gets overwritten whenever you change the slave keyboard - including replugging the same keyboard device.

If you have a desktop environment that sets these settings it should both set it on the slave devices instead of the master devices and also re-apply them whenever a new keyboard is found. If you set it manually (or with a script), you'll have to reapply it yourself.

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.