From 014230972617ce559f8d1e5deee667af5ed20dbe Mon Sep 17 00:00:00 2001 From: Alexandr Shadchin Date: Fri, 22 Apr 2011 18:33:37 +0000 Subject: update to xf86-input-keyboard 1.6.0 ok matthieu@ --- driver/xf86-input-keyboard/ChangeLog | 284 ++++++++++++++++++++++++++++ driver/xf86-input-keyboard/configure | 40 ++-- driver/xf86-input-keyboard/configure.ac | 4 +- driver/xf86-input-keyboard/man/kbd.man | 11 +- driver/xf86-input-keyboard/src/bsd_KbdMap.c | 200 -------------------- driver/xf86-input-keyboard/src/bsd_kbd.c | 55 ++---- driver/xf86-input-keyboard/src/hurd_kbd.c | 9 - driver/xf86-input-keyboard/src/kbd.c | 174 +++++++---------- driver/xf86-input-keyboard/src/lnx_KbdMap.c | 4 - driver/xf86-input-keyboard/src/lnx_kbd.c | 9 +- driver/xf86-input-keyboard/src/sun_kbd.c | 41 +--- driver/xf86-input-keyboard/src/sun_kbdMap.c | 12 +- driver/xf86-input-keyboard/src/xf86Keymap.h | 139 -------------- driver/xf86-input-keyboard/src/xf86OSKbd.h | 26 --- 14 files changed, 400 insertions(+), 608 deletions(-) diff --git a/driver/xf86-input-keyboard/ChangeLog b/driver/xf86-input-keyboard/ChangeLog index 170dc0a1f..183982396 100644 --- a/driver/xf86-input-keyboard/ChangeLog +++ b/driver/xf86-input-keyboard/ChangeLog @@ -1,3 +1,287 @@ +commit 0b9cd5121e1025e95a7e32addb675ab874bc6cb1 +Author: Peter Hutterer +Date: Tue Mar 8 09:38:29 2011 +1000 + + keyboard 1.6.0 + + Signed-off-by: Peter Hutterer + +commit 24ee4f6738955d507f500a90fda8153f19dd5038 +Author: Peter Hutterer +Date: Mon Mar 7 12:05:48 2011 +1000 + + man: explain what grp_led:scroll does in the example conf section + + Signed-off-by: Peter Hutterer + Reviewed by: Magnus Kessler + +commit d5634b77b578721e2bb2734f5fd92090e9d4c330 +Author: Peter Hutterer +Date: Mon Mar 7 11:35:44 2011 +1000 + + man: list xorg.conf.d snippets as possible configuration location + + Signed-off-by: Peter Hutterer + Reviewed by: Magnus Kessler + +commit 89358c49e519c7a1e0f9a9544f9c03b5d9c2115d +Author: Peter Hutterer +Date: Mon Mar 7 11:34:21 2011 +1000 + + man: don't mention the core keyboard. + + Core devices are an obsolete concept these days. + + Signed-off-by: Peter Hutterer + Reviewed by: Magnus Kessler + +commit 6496bb21074faff2642e09389b5476225dc4fdb3 +Author: Peter Hutterer +Date: Mon Feb 21 09:59:14 2011 +1000 + + keyboard 1.5.99.901 + + Signed-off-by: Peter Hutterer + +commit 15f0a4b71b4580c7dd9a0abd7b8fb92756b6733a +Author: Alexandr Shadchin +Date: Thu Feb 17 15:40:29 2011 +0500 + + Removed unnecessary code, since ABI_XINPUT_VERSION >= 2 + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit de7a5c120f646e293cc216007a5df865b41833b8 +Author: Alexandr Shadchin +Date: Thu Feb 17 15:40:28 2011 +0500 + + Require server 1.4 or later + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit a02757d7c3d8018f44c63553578763fcef41bcca +Author: Alexandr Shadchin +Date: Wed Feb 16 13:21:03 2011 +0500 + + Cleanup set the value of CustomKeycodes + + Also, do not print values of variables CustomKeycodes twice. + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit f45f3dbcf1f2a54d7d6a51d6e9884820cff4be12 +Author: Alexandr Shadchin +Date: Fri Feb 11 15:33:00 2011 +0500 + + Do not print values of Protocol twice + + Protocol printed when found in xf86SetStrOption(). + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit 6fca7f2371c113796d4cf27cca5635f3c6fb30af +Author: Alexandr Shadchin +Date: Fri Feb 11 15:32:59 2011 +0500 + + Remove unused XQUEUE + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit 8a540fa439bd7ea30c49d43ff3339ab599a7ba14 +Author: Alexandr Shadchin +Date: Fri Feb 11 15:32:57 2011 +0500 + + lnx: Fix detect CustomKeycodes for __powerpc__ + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit 849f5092efd770cf169ce9950e9dbb0bccbf9017 +Author: Alexandr Shadchin +Date: Sat Jan 8 17:09:10 2011 +0500 + + Removing unused bell_pitch and bell_duration + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit dd9ed7921ccffff9cacb6dc128b3f426f9312535 +Author: Alexandr Shadchin +Date: Sat Jan 8 20:09:48 2011 +0500 + + Removing unused PROT_XQUEUE and PROT_USB + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit 78652023a9f7758635e5507255826d79fbb2b028 +Author: Alexandr Shadchin +Date: Sat Jan 8 17:09:38 2011 +0500 + + bsd: Replace deprecated xfree/xcalloc with free & calloc + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit f7a81ab4225e14a50e26a49a0a17a2cf773a4ab1 +Author: Alexandr Shadchin +Date: Sat Jan 8 17:08:41 2011 +0500 + + Remove random History comment and OS_KBD_VERSION_CURRENT + + In xf86-input-mouse similar cleanup already done, can also make for keyboard? + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit e2f6e5d976ff8bbe68dc41b51d983cc95c11db84 +Author: Alexandr Shadchin +Date: Thu Jan 6 14:43:13 2011 +0500 + + Do not print values of variables XkbRules etc. twice + + xf86SetStrOption prints in log value of the variables XkbRules etc., + there is no need to take this information twice. + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Alan Coopersmith + +commit 7d03efb3a3af77ca6831492a793d18b89cc64083 +Author: Alexandr Shadchin +Date: Thu Jan 6 13:37:39 2011 +0500 + + bsd: Fix print wscons type keyboard for Sun5 + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Alan Coopersmith + +commit 40ed9bb3dc87702510d5e54c42a60a2cdd73c135 +Author: Alexandr Shadchin +Date: Thu Jan 6 13:21:35 2011 +0500 + + Fix default options for PC98 + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Alan Coopersmith + +commit e929446a401e73bcc680c488ada2fc50eb225b23 +Author: Alexandr Shadchin +Date: Thu Jan 6 12:59:19 2011 +0500 + + Removing unused SetKbdRepeat + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Alan Coopersmith + +commit cc1a2ba8c9aa3a4bed25394c981b41c903502c84 +Author: Alan Coopersmith +Date: Thu Dec 23 15:53:32 2010 -0800 + + sun_kbd: Replace deprecated xfree/xcalloc with free & calloc + + Also greatly simplified option/pointer handling to avoid generating + new warnings from passing const char * pointers to free() + + Signed-off-by: Alan Coopersmith + +commit bd099b5a87399d6ff1fd324172bfcc4bc07a362b +Author: Javier Acosta +Date: Thu Dec 23 09:43:51 2010 -0800 + + Make key codes for Sun Japanese keyboard match xkb-config mappings + + Solaris bug #7005752: + http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=7005752 + + Signed-off-by: Javier Acosta + Signed-off-by: Alan Coopersmith + +commit cb8b2fca90810a1a2d6e5f930e4eac0f929947c6 +Author: Alexandr Shadchin +Date: Tue Nov 30 20:12:24 2010 +0500 + + Removing unused OpenBSD PCCONS code + + In OpenBSD removed support PCCONS in 2002 year + http://marc.info/?l=openbsd-cvs&m=102435816424294&w=2 + + Signed-off-by: Alexandr Shadchin + Reviewed-by: Peter Hutterer + Signed-off-by: Peter Hutterer + +commit 26af626a2c4afba858a32bbb42077f8661d3de4f +Author: Adam Jackson +Date: Mon Jan 3 12:42:58 2011 -0500 + + linux: warning fixes + + lnx_KbdMap.c: In function 'KbdGetMapping': + lnx_KbdMap.c:44:17: warning: unused variable 'type' + lnx_KbdMap.c:42:13: warning: unused variable 'pKbd' + + Signed-off-by: Adam Jackson + +commit 492c14cdd1c4b950c475633a64086235d3550f5b +Author: Alexandr Shadchin +Date: Mon Jan 3 12:40:25 2011 -0500 + + bsd: Include fix + + Reviewed-by: Adam Jackson + Signed-off-by: Alexandr Shadchin + +commit a72c47487b67ad7134045d551dbe222eb4662058 +Author: Alexandr Shadchin +Date: Mon Jan 3 12:37:34 2011 -0500 + + Remove unused code + + Reviewed-by: Adam Jackson + Signed-off-by: Alexandr Shadchin + +commit 6c368bc3aa6d8e1b33d128a22f98ecda0d037e3b +Author: Adam Jackson +Date: Fri Dec 17 16:35:49 2010 -0500 + + Remove paranoia about event processing during suspend + + Signed-off-by: Adam Jackson + +commit 155b3e80fc95ea8397bc66fad18f5fa68d54a88e +Author: Alexandr Shadchin +Date: Mon Nov 29 21:02:39 2010 +0500 + + Removing unused variables vtSwitchSupported and VTSwitchEnabled + + Signed-off-by: Alexandr Shadchin + Reviewed-by: Alan Coopersmith + Signed-off-by: Peter Hutterer + +commit f11f2a7b5643cde57440102ad822995c70b142fb +Author: Alexandr Shadchin +Date: Sat Nov 27 02:39:13 2010 +0500 + + Removing unused variable kbdType. + + Signed-off-by: Alexandr Shadchin + Signed-off-by: Peter Hutterer + +commit 6e97362d7eee5b81bc8681559fbd8a8f6137915c +Author: Peter Hutterer +Date: Mon Oct 25 15:25:03 2010 +1000 + + Adjust to input ABI 12. + + New PreInit prototype and a few other things. + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + commit 90f69d7b859caff9f51b6fe20580582a91ed6d0d Author: Alan Coopersmith Date: Sat Oct 30 09:15:11 2010 -0700 diff --git a/driver/xf86-input-keyboard/configure b/driver/xf86-input-keyboard/configure index 9e418fd23..44e525289 100644 --- a/driver/xf86-input-keyboard/configure +++ b/driver/xf86-input-keyboard/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.62 for xf86-input-keyboard 1.5.0. +# Generated by GNU Autoconf 2.62 for xf86-input-keyboard 1.6.0. # # Report bugs to . # @@ -750,8 +750,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='xf86-input-keyboard' PACKAGE_TARNAME='xf86-input-keyboard' -PACKAGE_VERSION='1.5.0' -PACKAGE_STRING='xf86-input-keyboard 1.5.0' +PACKAGE_VERSION='1.6.0' +PACKAGE_STRING='xf86-input-keyboard 1.6.0' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' ac_unique_file="Makefile.am" @@ -1515,7 +1515,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xf86-input-keyboard 1.5.0 to adapt to many kinds of systems. +\`configure' configures xf86-input-keyboard 1.6.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1586,7 +1586,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xf86-input-keyboard 1.5.0:";; + short | recursive ) echo "Configuration of xf86-input-keyboard 1.6.0:";; esac cat <<\_ACEOF @@ -1702,7 +1702,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xf86-input-keyboard configure 1.5.0 +xf86-input-keyboard configure 1.6.0 generated by GNU Autoconf 2.62 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1716,7 +1716,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xf86-input-keyboard $as_me 1.5.0, which was +It was created by xf86-input-keyboard $as_me 1.6.0, which was generated by GNU Autoconf 2.62. Invocation command line was $ $0 $@ @@ -2370,7 +2370,7 @@ fi # Define the identity of the package. PACKAGE='xf86-input-keyboard' - VERSION='1.5.0' + VERSION='1.6.0' cat >>confdefs.h <<_ACEOF @@ -20697,12 +20697,12 @@ if test -n "$PKG_CONFIG"; then pkg_cv_XORG_CFLAGS="$XORG_CFLAGS" else if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.2.99.0 xproto inputproto\"") >&5 - ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.2.99.0 xproto inputproto") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.4 xproto inputproto\"") >&5 + ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.4 xproto inputproto") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XORG_CFLAGS=`$PKG_CONFIG --cflags "xorg-server >= 1.2.99.0 xproto inputproto" 2>/dev/null` + pkg_cv_XORG_CFLAGS=`$PKG_CONFIG --cflags "xorg-server >= 1.4 xproto inputproto" 2>/dev/null` else pkg_failed=yes fi @@ -20715,12 +20715,12 @@ if test -n "$PKG_CONFIG"; then pkg_cv_XORG_LIBS="$XORG_LIBS" else if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.2.99.0 xproto inputproto\"") >&5 - ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.2.99.0 xproto inputproto") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.4 xproto inputproto\"") >&5 + ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.4 xproto inputproto") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XORG_LIBS=`$PKG_CONFIG --libs "xorg-server >= 1.2.99.0 xproto inputproto" 2>/dev/null` + pkg_cv_XORG_LIBS=`$PKG_CONFIG --libs "xorg-server >= 1.4 xproto inputproto" 2>/dev/null` else pkg_failed=yes fi @@ -20739,14 +20739,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - XORG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "xorg-server >= 1.2.99.0 xproto inputproto"` + XORG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "xorg-server >= 1.4 xproto inputproto"` else - XORG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xorg-server >= 1.2.99.0 xproto inputproto"` + XORG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xorg-server >= 1.4 xproto inputproto"` fi # Put the nasty error message in config.log where it belongs echo "$XORG_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (xorg-server >= 1.2.99.0 xproto inputproto) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements (xorg-server >= 1.4 xproto inputproto) were not met: $XORG_PKG_ERRORS @@ -20757,7 +20757,7 @@ Alternatively, you may set the environment variables XORG_CFLAGS and XORG_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements (xorg-server >= 1.2.99.0 xproto inputproto) were not met: +$as_echo "$as_me: error: Package requirements (xorg-server >= 1.4 xproto inputproto) were not met: $XORG_PKG_ERRORS @@ -21360,7 +21360,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xf86-input-keyboard $as_me 1.5.0, which was +This file was extended by xf86-input-keyboard $as_me 1.6.0, which was generated by GNU Autoconf 2.62. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -21413,7 +21413,7 @@ Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -xf86-input-keyboard config.status 1.5.0 +xf86-input-keyboard config.status 1.6.0 configured by $0, generated by GNU Autoconf 2.62, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/driver/xf86-input-keyboard/configure.ac b/driver/xf86-input-keyboard/configure.ac index f6ebb963d..869283643 100644 --- a/driver/xf86-input-keyboard/configure.ac +++ b/driver/xf86-input-keyboard/configure.ac @@ -23,7 +23,7 @@ # Initialize Autoconf AC_PREREQ([2.60]) AC_INIT([xf86-input-keyboard], - [1.5.0], + [1.6.0], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xf86-input-keyboard]) AC_CONFIG_SRCDIR([Makefile.am]) @@ -45,7 +45,7 @@ XORG_MACROS_VERSION(1.8) XORG_DEFAULT_OPTIONS # Obtain compiler/linker options from server and required extensions -PKG_CHECK_MODULES(XORG, [xorg-server >= 1.2.99.0] xproto inputproto) +PKG_CHECK_MODULES(XORG, [xorg-server >= 1.4] xproto inputproto) # Define a configure option for an alternate input module directory AC_ARG_WITH(xorg-module-dir, diff --git a/driver/xf86-input-keyboard/man/kbd.man b/driver/xf86-input-keyboard/man/kbd.man index 4fb233600..d224ce5c3 100644 --- a/driver/xf86-input-keyboard/man/kbd.man +++ b/driver/xf86-input-keyboard/man/kbd.man @@ -22,13 +22,13 @@ driver formerly included in __xservername__. .PP The .B kbd -driver functions as a keyboard input device, and may be used as the -X server's core keyboard. +driver functions as a keyboard input device. .SH CONFIGURATION DETAILS .PP Depending on the X server version in use, input device options may be set -in either a __xconfigfile__ file, or in the configuration files read by the -Hardware Abstraction Layer (HAL) daemon, hald(1). +in either a __xconfigfile__ file, an xorg.conf.d snippet, or in the +configuration files read by the Hardware Abstraction Layer (HAL) daemon, +hald(1). .PP Please refer to __xconfigfile__(__filemansuffix__) for general configuration details and for options that can be used with all input drivers. This @@ -95,7 +95,8 @@ The following xorg.conf fragment ensures that user will be able to switch betwee .I us and .I sk -layouts by pressing the "menu" key. +layouts by pressing the "menu" key. The scroll lock LED shows which layout +is currently active. .PP The .B XkbVariant diff --git a/driver/xf86-input-keyboard/src/bsd_KbdMap.c b/driver/xf86-input-keyboard/src/bsd_KbdMap.c index 2697f6ab3..1b5cc3e2f 100644 --- a/driver/xf86-input-keyboard/src/bsd_KbdMap.c +++ b/driver/xf86-input-keyboard/src/bsd_KbdMap.c @@ -189,98 +189,6 @@ static KeySym eascii_to_x[512] = { NoSymbol, NoSymbol, NoSymbol, NoSymbol }; -#ifdef __OpenBSD__ -/* don't mark AltR and CtrlR for remapping, since they - * cannot be remapped by pccons */ -static unsigned char pccons_remap[128] = { - 0, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, /* 0x00 - 0x07 */ - 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, /* 0x08 - 0x0f */ - 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, /* 0x10 - 0x17 */ - 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, /* 0x18 - 0x1f */ - 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, /* 0x20 - 0x27 */ - 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, /* 0x28 - 0x2f */ - 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0, /* 0x30 - 0x37 */ - 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, /* 0x38 - 0x3f */ - 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0, /* 0x40 - 0x47 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 0x48 - 0x4f */ - 0, 0, 0, 0, 0, 0, 0x56, 0x57, /* 0x50 - 0x57 */ - 0x58, 0, 0, 0, 0, 0, 0, 0, /* 0x58 - 0x5f */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 0x60 - 0x67 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 0x68 - 0x6f */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 0x70 - 0x77 */ - 0, 0, 0, 0, 0, 0, 0, 0, /* 0x78 - 0x7f */ -}; - -/* This table assumes an iso8859_1 encoding for the characters - * > 80, as returned by pccons */ -static KeySym latin1_to_x[256] = { - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - XK_BackSpace, XK_Tab, XK_Linefeed, NoSymbol, - NoSymbol, XK_Return, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, XK_Escape, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - XK_space, XK_exclam, XK_quotedbl, XK_numbersign, - XK_dollar, XK_percent, XK_ampersand, XK_apostrophe, - XK_parenleft, XK_parenright, XK_asterisk, XK_plus, - XK_comma, XK_minus, XK_period, XK_slash, - XK_0, XK_1, XK_2, XK_3, - XK_4, XK_5, XK_6, XK_7, - XK_8, XK_9, XK_colon, XK_semicolon, - XK_less, XK_equal, XK_greater, XK_question, - XK_at, XK_A, XK_B, XK_C, - XK_D, XK_E, XK_F, XK_G, - XK_H, XK_I, XK_J, XK_K, - XK_L, XK_M, XK_N, XK_O, - XK_P, XK_Q, XK_R, XK_S, - XK_T, XK_U, XK_V, XK_W, - XK_X, XK_Y, XK_Z, XK_bracketleft, - XK_backslash, XK_bracketright,XK_asciicircum, XK_underscore, - XK_grave, XK_a, XK_b, XK_c, - XK_d, XK_e, XK_f, XK_g, - XK_h, XK_i, XK_j, XK_k, - XK_l, XK_m, XK_n, XK_o, - XK_p, XK_q, XK_r, XK_s, - XK_t, XK_u, XK_v, XK_w, - XK_x, XK_y, XK_z, XK_braceleft, - XK_bar, XK_braceright, XK_asciitilde, XK_Delete, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - NoSymbol, NoSymbol, NoSymbol, NoSymbol, - XK_nobreakspace,XK_exclamdown, XK_cent, XK_sterling, - XK_currency, XK_yen, XK_brokenbar, XK_section, - XK_diaeresis, XK_copyright, XK_ordfeminine, XK_guillemotleft, - XK_notsign, XK_hyphen, XK_registered, XK_macron, - XK_degree, XK_plusminus, XK_twosuperior, XK_threesuperior, - XK_acute, XK_mu, XK_paragraph, XK_periodcentered, - XK_cedilla, XK_onesuperior, XK_masculine, XK_guillemotright, - XK_onequarter, XK_onehalf, XK_threequarters,XK_questiondown, - XK_Agrave, XK_Aacute, XK_Acircumflex, XK_Atilde, - XK_Adiaeresis, XK_Aring, XK_AE, XK_Ccedilla, - XK_Egrave, XK_Eacute, XK_Ecircumflex, XK_Ediaeresis, - XK_Igrave, XK_Iacute, XK_Icircumflex, XK_Idiaeresis, - XK_ETH, XK_Ntilde, XK_Ograve, XK_Oacute, - XK_Ocircumflex, XK_Otilde, XK_Odiaeresis, XK_multiply, - XK_Ooblique, XK_Ugrave, XK_Uacute, XK_Ucircumflex, - XK_Udiaeresis, XK_Yacute, XK_THORN, XK_ssharp, - XK_agrave, XK_aacute, XK_acircumflex, XK_atilde, - XK_adiaeresis, XK_aring, XK_ae, XK_ccedilla, - XK_egrave, XK_eacute, XK_ecircumflex, XK_ediaeresis, - XK_igrave, XK_iacute, XK_icircumflex, XK_idiaeresis, - XK_eth, XK_ntilde, XK_ograve, XK_oacute, - XK_ocircumflex, XK_otilde, XK_odiaeresis, XK_division, - XK_oslash, XK_ugrave, XK_uacute, XK_ucircumflex, - XK_udiaeresis, XK_yacute, XK_thorn, XK_ydiaeresis - }; -#endif - #ifdef SYSCONS_SUPPORT static unsigned char sysconsCODEMap[] = { @@ -838,112 +746,6 @@ KbdGetMapping (InputInfoPtr pInfo, KeySymsPtr pKeySyms, CARD8 *pModMap) #ifndef __bsdi__ switch (pKbd->consType) { -#ifdef PCCONS_SUPPORT - case PCCONS: -#if defined(__OpenBSD__) - /* - * on OpenBSD, the pccons keymap is programmable, too - */ - { - pccons_keymap_t keymap[KB_NUM_KEYS]; - if (ioctl(pInfo->fd, CONSOLE_GET_KEYMAP, &keymap) != -1) { - for (i = 0; i < KB_NUM_KEYS; i++) - if (pccons_remap[i]) { - k = map + (pccons_remap[i] << 2); - switch (keymap[i].type) { - case KB_ASCII: - /* For ASCII keys, there is only one char in the keymap */ - k[0] = latin1_to_x[(unsigned char)keymap[i].unshift[0]]; - k[1] = latin1_to_x[(unsigned char)keymap[i].shift[0]]; - k[2] = latin1_to_x[(unsigned char)keymap[i].altgr[0]]; - k[3] = latin1_to_x[(unsigned char)keymap[i].shift_altgr[0]]; - break; - case KB_SCROLL: - k[0] = XK_Scroll_Lock; - goto special; - case KB_NUM: - k[0] = XK_Num_Lock; - goto special; - case KB_CAPS: - k[0] = XK_Caps_Lock; - goto special; - case KB_SHIFT: - switch (keymap[i].unshift[0]) { - case 1: - /* left shift */ - k[0] = XK_Shift_L; - break; - case 2: - /* right shift */ - k[0] = XK_Shift_R; - break; - default: - k[0] = NoSymbol; - } - goto special; - case KB_CTL: - k[0] = XK_Control_L; - goto special; - case KB_ALT: - k[0] = XK_Alt_L; - goto special; - case KB_FUNC: - switch (keymap[i].unshift[2]) { - case 'M': - k[0] = XK_F1; - break; - case 'N': - k[0] = XK_F2; - break; - case 'O': - k[0] = XK_F3; - break; - case 'P': - k[0] = XK_F4; - break; - case 'Q': - k[0] = XK_F5; - break; - case 'R': - k[0] = XK_F6; - break; - case 'S': - k[0] = XK_F7; - break; - case 'T': - k[0] = XK_F8; - break; - case 'U': - k[0] = XK_F9; - break; - case 'V': - k[0] = XK_F10; - break; - case 'W': - k[0] = XK_F11; - break; - case 'X': - k[0] = XK_F12; - break; - default: - k[0] = NoSymbol; - break; - } - goto special; - default: - k[0] = NoSymbol; - special: - k[1] = k[2] = k[3] = NoSymbol; - } - } - } else { - ErrorF("Can't read pccons keymap\n"); - } - } -#endif /* __OpenBSD__ */ - break; -#endif - /* * XXX wscons has no GIO_KEYMAP */ @@ -1026,8 +828,6 @@ KbdGetMapping (InputInfoPtr pInfo, KeySymsPtr pKeySyms, CARD8 *pModMap) break; } - - pKbd->kbdType = 0; pKeySyms->map = map; pKeySyms->mapWidth = GLYPHS_PER_KEY; diff --git a/driver/xf86-input-keyboard/src/bsd_kbd.c b/driver/xf86-input-keyboard/src/bsd_kbd.c index 7a3fe40aa..69ac04cbd 100644 --- a/driver/xf86-input-keyboard/src/bsd_kbd.c +++ b/driver/xf86-input-keyboard/src/bsd_kbd.c @@ -26,6 +26,7 @@ #include "xf86Xinput.h" #include "xf86OSKbd.h" #include "atKeynames.h" +#include "bsd_kbd.h" #ifdef WSCONS_SUPPORT #include @@ -61,13 +62,8 @@ struct nameint kbdopt[] = { }; #endif -extern void KbdGetMapping(InputInfoPtr pInfo, KeySymsPtr pKeySyms, - CARD8 *pModMap); - extern int priv_open_device(const char *dev); -extern Bool VTSwitchEnabled; - static KbdProtocolRec protocols[] = { {"standard", PROT_STD }, #ifdef WSCONS_SUPPORT @@ -179,25 +175,6 @@ GetKbdLeds(InputInfoPtr pInfo) return(leds); } -static void -SetKbdRepeat(InputInfoPtr pInfo, char rad) -{ - KbdDevPtr pKbd = (KbdDevPtr) pInfo->private; - switch (pKbd->consType) { - -#ifdef PCCONS_SUPPORT - case PCCONS: - break; -#endif -#if defined (SYSCONS_SUPPORT) || defined (PCVT_SUPPORT) - case SYSCONS: - case PCVT: - ioctl(pInfo->fd, KDSETRAD, rad); - break; -#endif - } -} - static int KbdOn(InputInfoPtr pInfo, int what) { @@ -417,11 +394,10 @@ OpenKeyboard(InputInfoPtr pInfo) #endif default: xf86Msg(X_ERROR,"\"%s\" is not a valid keyboard protocol name\n", s); - xfree(s); + free(s); return FALSE; } - xf86Msg(X_CONFIG, "%s: Protocol: %s\n", pInfo->name, s); - xfree(s); + free(s); s = xf86SetStrOption(pInfo->options, "Device", NULL); if (s == NULL) { @@ -442,20 +418,14 @@ OpenKeyboard(InputInfoPtr pInfo) #endif if (pInfo->fd == -1) { xf86Msg(X_ERROR, "%s: cannot open \"%s\"\n", pInfo->name, s); - xfree(s); + free(s); return FALSE; } pKbd->isConsole = FALSE; pKbd->consType = xf86Info.consType; - xfree(s); + free(s); } -#if defined (SYSCONS_SUPPORT) || defined (PCVT_SUPPORT) - if (pKbd->isConsole && - ((pKbd->consType == SYSCONS) || (pKbd->consType == PCVT))) - pKbd->vtSwitchSupported = TRUE; -#endif - #ifdef WSCONS_SUPPORT if (prot == PROT_WSCONS) { pKbd->consType = WSCONS; @@ -476,7 +446,7 @@ OpenKeyboard(InputInfoPtr pInfo) printWsType("USB", pInfo->name); break; #ifdef WSKBD_TYPE_ADB - case WSKBD_TYPE_ADB: + case WSKBD_TYPE_ADB: printWsType("ADB", pInfo->name); break; #endif @@ -486,9 +456,9 @@ OpenKeyboard(InputInfoPtr pInfo) break; #endif #ifdef WSKBD_TYPE_SUN5 - case WSKBD_TYPE_SUN5: - printWsType("Sun5", pInfo->name); - break; + case WSKBD_TYPE_SUN5: + printWsType("Sun5", pInfo->name); + break; #endif case WSKBD_TYPE_LK201: printWsType("LK-201", pInfo->name); @@ -565,16 +535,13 @@ xf86OSKbdPreInit(InputInfoPtr pInfo) pKbd->Bell = SoundBell; pKbd->SetLeds = SetKbdLeds; pKbd->GetLeds = GetKbdLeds; - pKbd->SetKbdRepeat = SetKbdRepeat; pKbd->KbdGetMapping = KbdGetMapping; pKbd->RemapScanCode = NULL; pKbd->OpenKeyboard = OpenKeyboard; - pKbd->vtSwitchSupported = FALSE; - pKbd->CustomKeycodes = FALSE; - - pKbd->private = xcalloc(sizeof(BsdKbdPrivRec), 1); + + pKbd->private = calloc(sizeof(BsdKbdPrivRec), 1); if (pKbd->private == NULL) { xf86Msg(X_ERROR,"can't allocate keyboard OS private data\n"); return FALSE; diff --git a/driver/xf86-input-keyboard/src/hurd_kbd.c b/driver/xf86-input-keyboard/src/hurd_kbd.c index 6063b4b69..8c0cd6060 100644 --- a/driver/xf86-input-keyboard/src/hurd_kbd.c +++ b/driver/xf86-input-keyboard/src/hurd_kbd.c @@ -95,12 +95,6 @@ GetKbdLeds(InputInfoPtr pInfo) return 0; } -static void -SetKbdRepeat(InputInfoPtr pInfo, char rad) -{ - return; -} - static void KbdGetMapping(InputInfoPtr pInfo, KeySymsPtr pKeySyms, CARD8 *pModMap) { @@ -161,12 +155,9 @@ xf86OSKbdPreInit(InputInfoPtr pInfo) pKbd->Bell = SoundKbdBell; pKbd->SetLeds = SetKbdLeds; pKbd->GetLeds = GetKbdLeds; - pKbd->SetKbdRepeat = SetKbdRepeat; pKbd->KbdGetMapping = KbdGetMapping; pKbd->RemapScanCode = ATScancode; pKbd->OpenKeyboard = OpenKeyboard; - pKbd->vtSwitchSupported = FALSE; - pKbd->CustomKeycodes = FALSE; pKbd->private = NULL; pInfo->read_input = ReadInput; return TRUE; diff --git a/driver/xf86-input-keyboard/src/kbd.c b/driver/xf86-input-keyboard/src/kbd.c index 5add332c3..06e1a6088 100644 --- a/driver/xf86-input-keyboard/src/kbd.c +++ b/driver/xf86-input-keyboard/src/kbd.c @@ -49,14 +49,17 @@ /* Used to know when the first DEVICE_ON after a DEVICE_INIT is called */ #define INITFLAG (1U << 31) +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12 static InputInfoPtr KbdPreInit(InputDriverPtr drv, IDevPtr dev, int flags); +#else +static int KbdPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags); +#endif static int KbdProc(DeviceIntPtr device, int what); static void KbdCtrl(DeviceIntPtr device, KeybdCtrl *ctrl); static void KbdBell(int percent, DeviceIntPtr dev, pointer ctrl, int unused); static void PostKbdEvent(InputInfoPtr pInfo, unsigned int key, Bool down); static void InitKBD(InputInfoPtr pInfo, Bool init); -static void SetXkbOption(InputInfoPtr pInfo, char *name, char **option); static void UpdateLeds(InputInfoPtr pInfo); _X_EXPORT InputDriverRec KBD = { @@ -78,27 +81,17 @@ _X_EXPORT InputDriverRec KEYBOARD = { }; static const char *kbdDefaults[] = { -#ifdef XQUEUE - "Protocol", "Xqueue", -#else "Protocol", "standard", -#endif "XkbRules", XKB_DFLT_RULES, "XkbModel", "pc105", - "CustomKeycodes", "off", NULL }; static const char *kbd98Defaults[] = { -#ifdef XQUEUE - "Protocol", "Xqueue", -#else "Protocol", "standard", -#endif "XkbRules", "xfree98", "XkbModel", "pc98", "XkbLayout", "jp", - "CustomKeycodes", "off", NULL }; @@ -108,37 +101,51 @@ static char *xkb_layout; static char *xkb_variant; static char *xkb_options; -static void -SetXkbOption(InputInfoPtr pInfo, char *name, char **option) -{ - char *s; - - if ((s = xf86SetStrOption(pInfo->options, name, NULL))) { - if (!s[0]) { - free(s); - *option = NULL; - } else { - *option = s; - xf86Msg(X_CONFIG, "%s: %s: \"%s\"\n", pInfo->name, name, s); - } - } -} +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12 +static int +NewKbdPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags); static InputInfoPtr KbdPreInit(InputDriverPtr drv, IDevPtr dev, int flags) { InputInfoPtr pInfo; - KbdDevPtr pKbd; - MessageType from = X_DEFAULT; - char *s; if (!(pInfo = xf86AllocateInput(drv, 0))) return NULL; - /* Initialise the InputInfoRec. */ pInfo->name = dev->identifier; - pInfo->type_name = XI_KEYBOARD; pInfo->flags = XI86_KEYBOARD_CAPABLE; + pInfo->conversion_proc = NULL; + pInfo->reverse_conversion_proc = NULL; + pInfo->private_flags = 0; + pInfo->always_core_feedback = NULL; + pInfo->conf_idev = dev; + pInfo->close_proc = NULL; + + if (NewKbdPreInit(drv, pInfo, flags) == Success) + { + pInfo->flags |= XI86_CONFIGURED; + return pInfo; + } + + xf86DeleteInput(pInfo, 0); + return NULL; +} + +static int +NewKbdPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags) +#else +static int +KbdPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags) +#endif +{ + KbdDevPtr pKbd; + char *s; + const char **defaults; + int rc = Success; + + /* Initialise the InputInfoRec. */ + pInfo->type_name = XI_KEYBOARD; pInfo->device_control = KbdProc; /* * We don't specify our own read_input function. We expect @@ -146,33 +153,37 @@ KbdPreInit(InputDriverPtr drv, IDevPtr dev, int flags) */ pInfo->read_input = NULL; pInfo->control_proc = NULL; - pInfo->close_proc = NULL; pInfo->switch_mode = NULL; - pInfo->conversion_proc = NULL; - pInfo->reverse_conversion_proc = NULL; pInfo->fd = -1; pInfo->dev = NULL; - pInfo->private_flags = 0; - pInfo->always_core_feedback = NULL; - pInfo->conf_idev = dev; if (!xf86IsPc98()) - xf86CollectInputOptions(pInfo, kbdDefaults, NULL); + defaults = kbdDefaults; else - xf86CollectInputOptions(pInfo, kbd98Defaults, NULL); + defaults = kbd98Defaults; + xf86CollectInputOptions(pInfo, defaults +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12 + , NULL +#endif + ); xf86ProcessCommonOptions(pInfo, pInfo->options); - if (!(pKbd = calloc(sizeof(KbdDevRec), 1))) - return pInfo; + if (!(pKbd = calloc(sizeof(KbdDevRec), 1))) { + rc = BadAlloc; + goto out; + } pInfo->private = pKbd; pKbd->PostEvent = PostKbdEvent; - if (!xf86OSKbdPreInit(pInfo)) - return pInfo; + if (!xf86OSKbdPreInit(pInfo)) { + rc = BadAlloc; + goto out; + } if (!pKbd->OpenKeyboard(pInfo)) { - return pInfo; + rc = BadMatch; + goto out; } if ((s = xf86SetStrOption(pInfo->options, "XLeds", NULL))) { @@ -191,26 +202,17 @@ KbdPreInit(InputDriverPtr drv, IDevPtr dev, int flags) free(s); } - SetXkbOption(pInfo, "XkbRules", &xkb_rules); - SetXkbOption(pInfo, "XkbModel", &xkb_model); - SetXkbOption(pInfo, "XkbLayout", &xkb_layout); - SetXkbOption(pInfo, "XkbVariant", &xkb_variant); - SetXkbOption(pInfo, "XkbOptions", &xkb_options); - - pKbd->CustomKeycodes = FALSE; - from = X_DEFAULT; - if (xf86FindOption(pInfo->options, "CustomKeycodes")) { - pKbd->CustomKeycodes = xf86SetBoolOption(pInfo->options, "CustomKeycodes", - pKbd->CustomKeycodes); - from = X_CONFIG; - } - - xf86Msg(from, "%s: CustomKeycodes %s\n", - pInfo->name, pKbd->CustomKeycodes ? "enabled" : "disabled"); + xkb_rules = xf86SetStrOption(pInfo->options, "XkbRules", NULL); + xkb_model = xf86SetStrOption(pInfo->options, "XkbModel", NULL); + xkb_layout = xf86SetStrOption(pInfo->options, "XkbLayout", NULL); + xkb_variant = xf86SetStrOption(pInfo->options, "XkbVariant", NULL); + xkb_options = xf86SetStrOption(pInfo->options, "XkbOptions", NULL); - pInfo->flags |= XI86_CONFIGURED; + pKbd->CustomKeycodes = xf86SetBoolOption(pInfo->options, "CustomKeycodes", + FALSE); - return pInfo; +out: + return rc; } static void @@ -273,51 +275,7 @@ KbdCtrl( DeviceIntPtr device, KeybdCtrl *ctrl) static void InitKBD(InputInfoPtr pInfo, Bool init) { - xEvent kevent; KbdDevPtr pKbd = (KbdDevPtr) pInfo->private; -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 1 - DeviceIntPtr pKeyboard = pInfo->dev; - KeyClassRec *keyc = pKeyboard->key; - KeySym *map = keyc->curKeySyms.map; - unsigned int i; -#endif - - kevent.u.keyButtonPointer.time = GetTimeInMillis(); - kevent.u.keyButtonPointer.rootX = 0; - kevent.u.keyButtonPointer.rootY = 0; - -/* The server does this for us with i-h. */ -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 1 - /* - * Hmm... here is the biggest hack of every time ! - * It may be possible that a switch-vt procedure has finished BEFORE - * you released all keys neccessary to do this. That peculiar behavior - * can fool the X-server pretty much, cause it assumes that some keys - * were not released. TWM may stuck alsmost completly.... - * OK, what we are doing here is after returning from the vt-switch - * exeplicitely unrelease all keyboard keys before the input-devices - * are reenabled. - */ - for (i = keyc->curKeySyms.minKeyCode, map = keyc->curKeySyms.map; - i < keyc->curKeySyms.maxKeyCode; - i++, map += keyc->curKeySyms.mapWidth) - if (KeyPressed(i)) - { - switch (*map) { - /* Don't release the lock keys */ - case XK_Caps_Lock: - case XK_Shift_Lock: - case XK_Num_Lock: - case XK_Scroll_Lock: - case XK_Kana_Lock: - break; - default: - kevent.u.u.detail = i; - kevent.u.u.type = KeyRelease; - (* pKeyboard->public.processInputProc)(&kevent, pKeyboard, 1); - } - } -#endif pKbd->scanPrefix = 0; @@ -442,10 +400,6 @@ PostKbdEvent(InputInfoPtr pInfo, unsigned int scanCode, Bool down) ErrorF("kbd driver rec scancode: 0x02%x %s\n", scanCode, down?"down":"up"); #endif - /* Disable any keyboard processing while in suspend */ - if (xf86inSuspend) - return; - /* * First do some special scancode remapping ... */ diff --git a/driver/xf86-input-keyboard/src/lnx_KbdMap.c b/driver/xf86-input-keyboard/src/lnx_KbdMap.c index 21bed2eff..a066d0dc5 100644 --- a/driver/xf86-input-keyboard/src/lnx_KbdMap.c +++ b/driver/xf86-input-keyboard/src/lnx_KbdMap.c @@ -39,9 +39,7 @@ static void readKernelMapping(InputInfoPtr pInfo, void KbdGetMapping (InputInfoPtr pInfo, KeySymsPtr pKeySyms, CARD8 *pModMap) { - KbdDevPtr pKbd = (KbdDevPtr) pInfo->private; KeySym *k; - char type; int i; readKernelMapping(pInfo, pKeySyms, pModMap); @@ -97,8 +95,6 @@ KbdGetMapping (InputInfoPtr pInfo, KeySymsPtr pKeySyms, CARD8 *pModMap) break; } - - pKbd->kbdType = ioctl(pInfo->fd, KDGKBTYPE, &type) != -1 ? type : KB_101; pKeySyms->map = map; pKeySyms->mapWidth = GLYPHS_PER_KEY; diff --git a/driver/xf86-input-keyboard/src/lnx_kbd.c b/driver/xf86-input-keyboard/src/lnx_kbd.c index 9b3aae38f..e69e1b6c9 100644 --- a/driver/xf86-input-keyboard/src/lnx_kbd.c +++ b/driver/xf86-input-keyboard/src/lnx_kbd.c @@ -37,8 +37,6 @@ static KbdProtocolRec protocols[] = { { NULL, PROT_UNKNOWN_KBD } }; -extern Bool VTSwitchEnabled; - static void SoundBell(InputInfoPtr pInfo, int loudness, int pitch, int duration) { @@ -185,7 +183,6 @@ OpenKeyboard(InputInfoPtr pInfo) return FALSE; } - xf86Msg(X_CONFIG, "%s: Protocol: %s\n", pInfo->name, s); free(s); s = xf86SetStrOption(pInfo->options, "Device", NULL); @@ -203,9 +200,6 @@ OpenKeyboard(InputInfoPtr pInfo) free(s); } - if (pKbd->isConsole) - pKbd->vtSwitchSupported = TRUE; - return TRUE; } @@ -225,7 +219,6 @@ xf86OSKbdPreInit(InputInfoPtr pInfo) pKbd->RemapScanCode = NULL; pKbd->OpenKeyboard = OpenKeyboard; - pKbd->vtSwitchSupported = FALSE; pKbd->private = calloc(sizeof(LnxKbdPrivRec), 1); if (pKbd->private == NULL) { @@ -239,7 +232,7 @@ xf86OSKbdPreInit(InputInfoPtr pInfo) f = fopen("/proc/sys/dev/mac_hid/keyboard_sends_linux_keycodes","r"); if (f) { if (fgetc(f) == '0') - pKbd->CustomKeycodes = TRUE; + xf86ReplaceBoolOption(pInfo->options, "CustomKeycodes", TRUE); fclose(f); } } diff --git a/driver/xf86-input-keyboard/src/sun_kbd.c b/driver/xf86-input-keyboard/src/sun_kbd.c index 3f98c4e40..a2400872f 100644 --- a/driver/xf86-input-keyboard/src/sun_kbd.c +++ b/driver/xf86-input-keyboard/src/sun_kbd.c @@ -409,13 +409,6 @@ GetKbdLeds(InputInfoPtr pInfo) return leds; } -/* ARGSUSED0 */ -static void -SetKbdRepeat(InputInfoPtr pInfo, char rad) -{ - /* Nothing to do */ -} - static void CloseKeyboard(InputInfoPtr pInfo) { @@ -489,35 +482,23 @@ ReadInput(InputInfoPtr pInfo) static Bool OpenKeyboard(InputInfoPtr pInfo) { - const char *kbdPath = NULL; - const char *defaultKbd = "/dev/kbd"; - - if (pInfo->options != NULL) { - kbdPath = xf86SetStrOption(pInfo->options, "Device", NULL); - } - if (kbdPath == NULL) { - kbdPath = defaultKbd; - } + char *kbdPath = xf86SetStrOption(pInfo->options, "Device", "/dev/kbd"); + Bool ret; pInfo->fd = open(kbdPath, O_RDONLY | O_NONBLOCK); if (pInfo->fd == -1) { - xf86Msg(X_ERROR, "%s: cannot open \"%s\"\n", pInfo->name, kbdPath); + xf86Msg(X_ERROR, "%s: cannot open \"%s\"\n", pInfo->name, kbdPath); + ret = FALSE; } else { xf86MsgVerb(X_INFO, 3, "%s: Opened device \"%s\"\n", pInfo->name, kbdPath); - } - - if ((kbdPath != NULL) && (kbdPath != defaultKbd)) { - xfree(kbdPath); - } - - if (pInfo->fd == -1) { - return FALSE; - } else { pInfo->read_input = ReadInput; - return TRUE; + ret = TRUE; } + + free(kbdPath); + return ret; } _X_EXPORT Bool @@ -531,17 +512,13 @@ xf86OSKbdPreInit(InputInfoPtr pInfo) pKbd->Bell = SoundKbdBell; pKbd->SetLeds = SetKbdLeds; pKbd->GetLeds = GetKbdLeds; - pKbd->SetKbdRepeat = SetKbdRepeat; pKbd->KbdGetMapping = KbdGetMapping; pKbd->RemapScanCode = NULL; pKbd->OpenKeyboard = OpenKeyboard; - pKbd->vtSwitchSupported = FALSE; - pKbd->CustomKeycodes = FALSE; - - pKbd->private = xcalloc(sizeof(sunKbdPrivRec), 1); + pKbd->private = calloc(sizeof(sunKbdPrivRec), 1); if (pKbd->private == NULL) { xf86Msg(X_ERROR,"can't allocate keyboard OS private data\n"); return FALSE; diff --git a/driver/xf86-input-keyboard/src/sun_kbdMap.c b/driver/xf86-input-keyboard/src/sun_kbdMap.c index 174aed951..1e0a3665f 100644 --- a/driver/xf86-input-keyboard/src/sun_kbdMap.c +++ b/driver/xf86-input-keyboard/src/sun_kbdMap.c @@ -37,10 +37,6 @@ /* Map the Solaris keycodes to the "XFree86" keycodes. */ -/* Additional Sun Japanese Keyboard Keys not defined in atKeynames.h */ -#define KEY_Kanji 0x82 -#define KEY_Execute 0x83 - /* * Additional Korean 106 Keyboard Keys not defined in atKeynames.h * These are exactly same USB usage id with Kana(0x90) and Eisu(0x91) keys @@ -479,10 +475,10 @@ static unsigned char usbmap[256] = { /* 133 */ KEY_NOTUSED, /* 134 */ KEY_NOTUSED, /* 135 */ KEY_BSlash2, /* Sun Japanese Kbd: Backslash / Underscore */ - /* 136 */ KEY_XFER, /* Sun Japanese Kbd: Henkan Mode */ + /* 136 */ KEY_HKTG, /* Sun Japanese type7 Kbd: Hirugana/Katakana */ /* 137 */ KEY_Yen, /* Sun Japanese Kbd: Yen / Brokenbar */ - /* 138 */ KEY_Kanji, /* Sun Japanese Kbd: Kanji */ - /* 139 */ KEY_Execute, /* Sun Japanese Kbd: Execute */ + /* 138 */ KEY_XFER, /* Sun Japanese Kbd: Kanji Transfer */ + /* 139 */ KEY_NFER, /* Sun Japanese Kbd: No Kanji Transfer */ /* 140 */ KEY_NOTUSED, /* 141 */ KEY_NOTUSED, /* 142 */ KEY_NOTUSED, @@ -604,8 +600,6 @@ KbdGetMapping (InputInfoPtr pInfo, KeySymsPtr pKeySyms, CARD8 *pModMap) * Add Sun keyboard keysyms to default map */ #define map_for_key(k,c) map[(k * GLYPHS_PER_KEY) + c] - map_for_key(KEY_Kanji, 0) = XK_Kanji; - map_for_key(KEY_Execute, 0) = XK_Execute; map_for_key(KEY_Power, 0) = SunXK_PowerSwitch; map_for_key(KEY_Power, 1) = SunXK_PowerSwitchShift; map_for_key(KEY_Mute, 0) = SunXK_AudioMute; diff --git a/driver/xf86-input-keyboard/src/xf86Keymap.h b/driver/xf86-input-keyboard/src/xf86Keymap.h index f45e177ce..86991af46 100644 --- a/driver/xf86-input-keyboard/src/xf86Keymap.h +++ b/driver/xf86-input-keyboard/src/xf86Keymap.h @@ -165,142 +165,3 @@ static KeySym map[NUM_KEYCODES * GLYPHS_PER_KEY] = { /* 0x7e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, /* 0x7f */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, }; - -#if !defined(Lynx) && \ - !defined(__UNIXOS2__) && \ - !defined(__mips__) && \ - !defined(linux) && \ - !defined(CSRG_BASED) && \ - !defined(__CYGWIN__) && \ - !defined(sun) - -static KeySym map84[NUM_KEYCODES * GLYPHS_PER_KEY] = { - /* 0x00 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x01 */ XK_Escape, NoSymbol, NoSymbol, NoSymbol, - /* 0x02 */ XK_1, XK_exclam, NoSymbol, NoSymbol, - /* 0x03 */ XK_2, XK_at, NoSymbol, NoSymbol, - /* 0x04 */ XK_3, XK_numbersign, NoSymbol, NoSymbol, - /* 0x05 */ XK_4, XK_dollar, NoSymbol, NoSymbol, - /* 0x06 */ XK_5, XK_percent, NoSymbol, NoSymbol, - /* 0x07 */ XK_6, XK_asciicircum, NoSymbol, NoSymbol, - /* 0x08 */ XK_7, XK_ampersand, NoSymbol, NoSymbol, - /* 0x09 */ XK_8, XK_asterisk, NoSymbol, NoSymbol, - /* 0x0a */ XK_9, XK_parenleft, NoSymbol, NoSymbol, - /* 0x0b */ XK_0, XK_parenright, NoSymbol, NoSymbol, - /* 0x0c */ XK_minus, XK_underscore, NoSymbol, NoSymbol, - /* 0x0d */ XK_equal, XK_plus, NoSymbol, NoSymbol, - /* 0x0e */ XK_BackSpace, NoSymbol, NoSymbol, NoSymbol, - /* 0x0f */ XK_Tab, NoSymbol, NoSymbol, NoSymbol, - /* 0x10 */ XK_Q, NoSymbol, NoSymbol, NoSymbol, - /* 0x11 */ XK_W, NoSymbol, NoSymbol, NoSymbol, - /* 0x12 */ XK_E, NoSymbol, NoSymbol, NoSymbol, - /* 0x13 */ XK_R, NoSymbol, NoSymbol, NoSymbol, - /* 0x14 */ XK_T, NoSymbol, NoSymbol, NoSymbol, - /* 0x15 */ XK_Y, NoSymbol, NoSymbol, NoSymbol, - /* 0x16 */ XK_U, NoSymbol, NoSymbol, NoSymbol, - /* 0x17 */ XK_I, NoSymbol, NoSymbol, NoSymbol, - /* 0x18 */ XK_O, NoSymbol, NoSymbol, NoSymbol, - /* 0x19 */ XK_P, NoSymbol, NoSymbol, NoSymbol, - /* 0x1a */ XK_bracketleft, XK_braceleft, NoSymbol, NoSymbol, - /* 0x1b */ XK_bracketright,XK_braceright, NoSymbol, NoSymbol, - /* 0x1c */ XK_Return, NoSymbol, NoSymbol, NoSymbol, - /* 0x1d */ XK_Control_L, NoSymbol, NoSymbol, NoSymbol, - /* 0x1e */ XK_A, NoSymbol, NoSymbol, NoSymbol, - /* 0x1f */ XK_S, NoSymbol, NoSymbol, NoSymbol, - /* 0x20 */ XK_D, NoSymbol, NoSymbol, NoSymbol, - /* 0x21 */ XK_F, NoSymbol, NoSymbol, NoSymbol, - /* 0x22 */ XK_G, NoSymbol, NoSymbol, NoSymbol, - /* 0x23 */ XK_H, NoSymbol, NoSymbol, NoSymbol, - /* 0x24 */ XK_J, NoSymbol, NoSymbol, NoSymbol, - /* 0x25 */ XK_K, NoSymbol, NoSymbol, NoSymbol, - /* 0x26 */ XK_L, NoSymbol, NoSymbol, NoSymbol, - /* 0x27 */ XK_semicolon, XK_colon, NoSymbol, NoSymbol, - /* 0x28 */ XK_quoteright, XK_quotedbl, NoSymbol, NoSymbol, - /* 0x29 */ XK_quoteleft, XK_asciitilde, NoSymbol, NoSymbol, - /* 0x2a */ XK_Shift_L, NoSymbol, NoSymbol, NoSymbol, - /* 0x2b */ XK_backslash, XK_bar, NoSymbol, NoSymbol, - /* 0x2c */ XK_Z, NoSymbol, NoSymbol, NoSymbol, - /* 0x2d */ XK_X, NoSymbol, NoSymbol, NoSymbol, - /* 0x2e */ XK_C, NoSymbol, NoSymbol, NoSymbol, - /* 0x2f */ XK_V, NoSymbol, NoSymbol, NoSymbol, - /* 0x30 */ XK_B, NoSymbol, NoSymbol, NoSymbol, - /* 0x31 */ XK_N, NoSymbol, NoSymbol, NoSymbol, - /* 0x32 */ XK_M, NoSymbol, NoSymbol, NoSymbol, - /* 0x33 */ XK_comma, XK_less, NoSymbol, NoSymbol, - /* 0x34 */ XK_period, XK_greater, NoSymbol, NoSymbol, - /* 0x35 */ XK_slash, XK_question, NoSymbol, NoSymbol, - /* 0x36 */ XK_Shift_R, NoSymbol, NoSymbol, NoSymbol, - /* 0x37 */ XK_KP_Multiply, NoSymbol, NoSymbol, NoSymbol, - /* 0x38 */ XK_Alt_L, XK_Meta_L, NoSymbol, NoSymbol, - /* 0x39 */ XK_space, NoSymbol, NoSymbol, NoSymbol, - /* 0x3a */ XK_Caps_Lock, NoSymbol, NoSymbol, NoSymbol, - /* 0x3b */ XK_F1, NoSymbol, NoSymbol, NoSymbol, - /* 0x3c */ XK_F2, NoSymbol, NoSymbol, NoSymbol, - /* 0x3d */ XK_F3, NoSymbol, NoSymbol, NoSymbol, - /* 0x3e */ XK_F4, NoSymbol, NoSymbol, NoSymbol, - /* 0x3f */ XK_F5, NoSymbol, NoSymbol, NoSymbol, - /* 0x40 */ XK_F6, NoSymbol, NoSymbol, NoSymbol, - /* 0x41 */ XK_F7, NoSymbol, NoSymbol, NoSymbol, - /* 0x42 */ XK_F8, NoSymbol, NoSymbol, NoSymbol, - /* 0x43 */ XK_F9, NoSymbol, NoSymbol, NoSymbol, - /* 0x44 */ XK_F10, NoSymbol, NoSymbol, NoSymbol, - /* 0x45 */ XK_Num_Lock, NoSymbol, NoSymbol, NoSymbol, - /* 0x46 */ XK_Scroll_Lock, NoSymbol, NoSymbol, NoSymbol, - /* 0x47 */ XK_KP_Home, XK_KP_7, NoSymbol, NoSymbol, - /* 0x48 */ XK_KP_Up, XK_KP_8, NoSymbol, NoSymbol, - /* 0x49 */ XK_KP_Prior, XK_KP_9, NoSymbol, NoSymbol, - /* 0x4a */ XK_KP_Subtract, NoSymbol, NoSymbol, NoSymbol, - /* 0x4b */ XK_KP_Left, XK_KP_4, NoSymbol, NoSymbol, - /* 0x4c */ NoSymbol, XK_KP_5, NoSymbol, NoSymbol, - /* 0x4d */ XK_KP_Right, XK_KP_6, NoSymbol, NoSymbol, - /* 0x4e */ XK_KP_Add, NoSymbol, NoSymbol, NoSymbol, - /* 0x4f */ XK_KP_End, XK_KP_1, NoSymbol, NoSymbol, - /* 0x50 */ XK_KP_Down, XK_KP_2, NoSymbol, NoSymbol, - /* 0x51 */ XK_KP_Next, XK_KP_3, NoSymbol, NoSymbol, - /* 0x52 */ XK_KP_Insert, XK_KP_0, NoSymbol, NoSymbol, - /* 0x53 */ XK_KP_Delete, XK_KP_Decimal, NoSymbol, NoSymbol, - /* 0x54 */ XK_Sys_Req, NoSymbol, NoSymbol, NoSymbol, - /* 0x55 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x56 */ XK_less, XK_greater, NoSymbol, NoSymbol, - /* 0x57 */ XK_F11, NoSymbol, NoSymbol, NoSymbol, - /* 0x58 */ XK_F12, NoSymbol, NoSymbol, NoSymbol, - /* 0x59 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x5a */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x5b */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x5c */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x5d */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x5e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x5f */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x60 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x61 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x62 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x63 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x64 */ XK_KP_Enter, NoSymbol, NoSymbol, NoSymbol, - /* 0x65 */ XK_Control_R, NoSymbol, NoSymbol, NoSymbol, - /* 0x66 */ XK_Pause, NoSymbol, NoSymbol, NoSymbol, - /* 0x67 */ XK_Print, NoSymbol, NoSymbol, NoSymbol, - /* 0x68 */ XK_KP_Divide, NoSymbol, NoSymbol, NoSymbol, - /* 0x69 */ XK_Alt_R, XK_Meta_R, NoSymbol, NoSymbol, - /* 0x6a */ XK_Break, NoSymbol, NoSymbol, NoSymbol, - /* 0x6b */ XK_Meta_L, NoSymbol, NoSymbol, NoSymbol, - /* 0x6c */ XK_Meta_R, NoSymbol, NoSymbol, NoSymbol, - /* 0x6d */ XK_Menu, NoSymbol, NoSymbol, NoSymbol, - /* 0x6e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x6f */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x70 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x71 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x72 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x73 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x74 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x75 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x76 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x77 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x78 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x79 */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x7a */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x7b */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x7c */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x7d */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, - /* 0x7e */ NoSymbol, NoSymbol, NoSymbol, NoSymbol, -}; -#endif diff --git a/driver/xf86-input-keyboard/src/xf86OSKbd.h b/driver/xf86-input-keyboard/src/xf86OSKbd.h index daeabf1b3..cba049fc4 100644 --- a/driver/xf86-input-keyboard/src/xf86OSKbd.h +++ b/driver/xf86-input-keyboard/src/xf86OSKbd.h @@ -40,7 +40,6 @@ typedef void (*BellProc)(InputInfoPtr pInfo, int loudness, int pitch, int duration); typedef void (*SetLedsProc)(InputInfoPtr pInfo, int leds); typedef int (*GetLedsProc)(InputInfoPtr pInfo); -typedef void (*SetKbdRepeatProc)(InputInfoPtr pInfo, char rad); typedef void (*KbdGetMappingProc)(InputInfoPtr pInfo, KeySymsPtr pKeySyms, CARD8* pModMap); typedef int (*RemapScanCodeProc)(InputInfoPtr pInfo, int *scanCode); @@ -60,20 +59,16 @@ typedef struct { BellProc Bell; SetLedsProc SetLeds; GetLedsProc GetLeds; - SetKbdRepeatProc SetKbdRepeat; KbdGetMappingProc KbdGetMapping; RemapScanCodeProc RemapScanCode; OpenKeyboardProc OpenKeyboard; PostEventProc PostEvent; - int bell_pitch; - int bell_duration; unsigned long leds; unsigned long xledsMask; unsigned long keyLeds; int scanPrefix; - Bool vtSwitchSupported; Bool CustomKeycodes; Bool isConsole; TransMapPtr scancodeMap; @@ -81,7 +76,6 @@ typedef struct { /* os specific */ pointer private; - int kbdType; int consType; int wsKbdType; @@ -89,9 +83,7 @@ typedef struct { typedef enum { PROT_STD, - PROT_XQUEUE, PROT_WSCONS, - PROT_USB, PROT_UNKNOWN_KBD } KbdProtocolId; @@ -101,21 +93,3 @@ typedef struct { } KbdProtocolRec; Bool xf86OSKbdPreInit(InputInfoPtr pInfo); - -/* Adjust this when the kbd interface changes. */ - -/* - * History: - * - * 1.0.0 - Initial version. - */ - -#define OS_KBD_VERSION_MAJOR 1 -#define OS_KBD_VERSION_MINOR 0 -#define OS_KBD_VERSION_PATCH 0 - -#define OS_KBD_VERSION_CURRENT \ - BUILTIN_INTERFACE_VERSION_NUMERIC(OS_KBD_VERSION_MAJOR, \ - OS_KBD_VERSION_MINOR, \ - OS_KBD_VERSION_PATCH) - -- cgit v1.2.3