From f60eeadfed24cb66eb745db1313b70f1a28c1472 Mon Sep 17 00:00:00 2001 From: tma Date: Sat, 4 Feb 2006 14:11:53 +0000 Subject: * Do not cull non-ascii keyboard chars at the SDL level any more, these are handled in cl_keys.c. (This fixes ctrl-c not working). git-svn-id: svn://svn.icculus.org/quake3/trunk@532 edf5b092-35ff-0310-97b2-ce42778d08ea --- code/unix/sdl_glimp.c | 33 +++++++++++++-------------------- 1 file changed, 13 insertions(+), 20 deletions(-) (limited to 'code/unix') diff --git a/code/unix/sdl_glimp.c b/code/unix/sdl_glimp.c index db77e14..8ad6867 100644 --- a/code/unix/sdl_glimp.c +++ b/code/unix/sdl_glimp.c @@ -252,27 +252,20 @@ static const char *XLateKey(SDL_keysym *keysym, int *key) default: break; } - if (*key == K_BACKSPACE) - buf[0] = 8; - else + if( keysym->unicode <= 127 ) // maps to ASCII? { - if (keysym->unicode <= 255 && keysym->unicode >= 20) // maps to ASCII? - { - char ch = (char) keysym->unicode; - if (ch == '~') - *key = '~'; // console HACK - - // The X11 driver converts to lowercase, but apparently we shouldn't. - // There's possibly somewhere else where they covert back. Passing - // uppercase to the engine works fine and fixes all-lower input. - // (https://bugzilla.icculus.org/show_bug.cgi?id=2364) --ryan. - //else if (ch >= 'A' && ch <= 'Z') - // ch = ch - 'A' + 'a'; - - buf[0] = ch; - } - else if(keysym->unicode == 8) // ctrl-h - buf[0] = 8; + char ch = (char) keysym->unicode; + if (ch == '~') + *key = '~'; // console HACK + + // The X11 driver converts to lowercase, but apparently we shouldn't. + // There's possibly somewhere else where they covert back. Passing + // uppercase to the engine works fine and fixes all-lower input. + // (https://bugzilla.icculus.org/show_bug.cgi?id=2364) --ryan. + //else if (ch >= 'A' && ch <= 'Z') + // ch = ch - 'A' + 'a'; + + buf[0] = ch; } return buf; -- cgit v1.2.3