aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/kbd
diff options
context:
space:
mode:
authorAndrey A. Chernov <ache@FreeBSD.org>2000-05-28 12:43:24 +0000
committerAndrey A. Chernov <ache@FreeBSD.org>2000-05-28 12:43:24 +0000
commit2073104f875dcc76cebe31acd7e03957b7313398 (patch)
treedf6e291995ed33dd4551eb663eb44b6d8813eb78 /sys/dev/kbd
parent84c27d0735c95b747d409e56f98d993a3eddf6dc (diff)
downloadsrc-2073104f875dcc76cebe31acd7e03957b7313398.tar.gz
src-2073104f875dcc76cebe31acd7e03957b7313398.zip
Manipulate with AltGR Led (really CapsLock Led) only in K_XLATE mode, because
all other modes not set ALKED flag and it means that CapsLock always turned off for them. Real bug example is X11 which never turn on CapsLock with Russian keyboard. PR: 18651 Submitted by: "Mike E. Matsnev" <mike@po.cs.msu.su>
Notes
Notes: svn path=/head/; revision=61004
Diffstat (limited to 'sys/dev/kbd')
-rw-r--r--sys/dev/kbd/atkbd.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/kbd/atkbd.c b/sys/dev/kbd/atkbd.c
index 186e8944a313..497d267bc272 100644
--- a/sys/dev/kbd/atkbd.c
+++ b/sys/dev/kbd/atkbd.c
@@ -860,7 +860,8 @@ atkbd_ioctl(keyboard_t *kbd, u_long cmd, caddr_t arg)
}
i = *(int *)arg;
/* replace CAPS LED with ALTGR LED for ALTGR keyboards */
- if (kbd->kb_keymap->n_keys > ALTGR_OFFSET) {
+ if (state->ks_mode == K_XLATE &&
+ kbd->kb_keymap->n_keys > ALTGR_OFFSET) {
if (i & ALKED)
i |= CLKED;
else