diff options
author | Deron Johnson <deron.johnson@sun.com> | 2005-02-17 22:44:41 +0000 |
---|---|---|
committer | Deron Johnson <deron.johnson@sun.com> | 2005-02-17 22:44:41 +0000 |
commit | d370e689f23079bf278d995584456aaeb89acd44 (patch) | |
tree | a3246cacb6972d49b1464e198de3f42385eb7510 | |
parent | b9bece29e9733bdf4bb44da6ced4d3e0e433f6e5 (diff) | |
download | xorg-driver-xf86-input-keyboard-lg3d-dev-0-7-1.tar.gz |
Joined with branch XORG-6_8_2.lg3d-rel-0-6-2lg3d-masterlg3d-dev-0-7-1lg3d-dev-0-7-0lg3d-dev-0-6-2lg3d-dev-0-6-1-1
-rw-r--r-- | src/kbd.c | 19 |
1 files changed, 10 insertions, 9 deletions
@@ -1,4 +1,4 @@ -/* $XdotOrg: xc/programs/Xserver/hw/xfree86/input/keyboard/kbd.c,v 1.5 2004/08/29 21:06:00 kem Exp $ */ +/* $XdotOrg: xc/programs/Xserver/hw/xfree86/input/keyboard/kbd.c,v 1.6.2.1 2004/12/16 03:38:45 gisburn Exp $ */ /* $XFree86: xc/programs/Xserver/hw/xfree86/input/keyboard/kbd.c,v 1.8 2003/11/03 05:11:47 tsi Exp $ */ /* @@ -12,7 +12,7 @@ * xf86Events.c and xf86Io.c which are * Copyright 1990,91 by Thomas Roell, Dinkelscherben, Germany. */ -/* $XdotOrg: xc/programs/Xserver/hw/xfree86/input/keyboard/kbd.c,v 1.5 2004/08/29 21:06:00 kem Exp $ */ +/* $XdotOrg: xc/programs/Xserver/hw/xfree86/input/keyboard/kbd.c,v 1.6.2.1 2004/12/16 03:38:45 gisburn Exp $ */ #define NEED_EVENTS #include "X.h" @@ -135,7 +135,7 @@ static const char *kbdDefaults[] = { "Protocol", "standard", "AutoRepeat", "500 30", "XkbRules", __XKBDEFRULES__, - "XkbModel", "pc101", + "XkbModel", "pc105", "XkbLayout", "us", "Panix106", "off", "CustomKeycodes", "off", @@ -372,6 +372,7 @@ KbdCtrl( DeviceIntPtr device, KeybdCtrl *ctrl) } #endif pKbd->SetLeds(pInfo, pKbd->leds); + pKbd->autoRepeat = ctrl->autoRepeat; return (Success); } @@ -720,14 +721,14 @@ PostKbdEvent(InputInfoPtr pInfo, unsigned int scanCode, Bool down) /* * check for an autorepeat-event */ - if (down) { + if (down && KeyPressed(keycode)) { int num = keycode >> 3; int bit = 1 << (keycode & 7); - if ((keyc->down[num] & bit) && - ((kbdfeed->ctrl.autoRepeat != AutoRepeatModeOn) || - keyc->modifierMap[keycode] || - !(kbdfeed->ctrl.autoRepeats[num] & bit))) - return; + + if ((pKbd->autoRepeat != AutoRepeatModeOn) || + keyc->modifierMap[keycode] || + !(kbdfeed->ctrl.autoRepeats[num] & bit)) + return; } if (UsePrefix) { |