diff options
| author | Warner Losh <imp@FreeBSD.org> | 2007-07-25 06:48:33 +0000 |
|---|---|---|
| committer | Warner Losh <imp@FreeBSD.org> | 2007-07-25 06:48:33 +0000 |
| commit | 3b62e837c9260196df01b8823d246f766e00ef26 (patch) | |
| tree | 48d4f362449f7bca63b1052b877bb4570ff6e9ec /sys/dev/usb | |
| parent | 8a639d8fb646b06b44d3a8b9075ab4aedee5794e (diff) | |
Notes
Diffstat (limited to 'sys/dev/usb')
| -rw-r--r-- | sys/dev/usb/ukbd.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/dev/usb/ukbd.c b/sys/dev/usb/ukbd.c index 2db97ff54fe83..78a274ae1d3ac 100644 --- a/sys/dev/usb/ukbd.c +++ b/sys/dev/usb/ukbd.c @@ -787,6 +787,15 @@ ukbd_interrupt(keyboard_t *kbd, void *arg) } } ADDKEY1(key | KEY_PRESS); + /* + * If any other key is presently down, force its repeat to be + * well in the future (100s). This makes the last key to be + * pressed do the autorepeat. + */ + for (j = 0; j < NKEYCODE; j++) { + if (j != i) + state->ks_ntime[j] = now + 100 * 1000; + } pfound: ; } |
