# HG changeset patch # User Sam Lantinga # Date 1151036875 0 # Node ID 406b8325ee348bfeab9f1fae69cf984849f828f6 # Parent 4627eca2c02b430f171e9ad17c042f51e3488f46 Fixed bug #147 Only enable Unicode key events if Unicode translation is enabled. diff -r 4627eca2c02b -r 406b8325ee34 src/video/quartz/SDL_QuartzEvents.m --- a/src/video/quartz/SDL_QuartzEvents.m Fri Jun 23 02:19:52 2006 +0000 +++ b/src/video/quartz/SDL_QuartzEvents.m Fri Jun 23 04:27:55 2006 +0000 @@ -260,10 +260,23 @@ contains multiple characters, we'll use 0 as the scancode/keysym. */ - chars = [ event characters ]; - numChars = [ chars length ]; + if (SDL_TranslateUNICODE) { + chars = [ event characters ]; + numChars = [ chars length ]; + } else { + numChars = 0; + } - if (numChars == 1) { + if (numChars == 0) { + + key.scancode = [ event keyCode ]; + key.sym = keymap [ key.scancode ]; + key.unicode = 0; + key.mod = KMOD_NONE; + + SDL_PrivateKeyboard (state, &key); + } + else if (numChars == 1) { key.scancode = [ event keyCode ]; key.sym = keymap [ key.scancode ]; @@ -272,15 +285,6 @@ SDL_PrivateKeyboard (state, &key); } - else if (numChars == 0) { - - key.scancode = [ event keyCode ]; - key.sym = keymap [ key.scancode ]; - key.unicode = 0; - key.mod = KMOD_NONE; - - SDL_PrivateKeyboard (state, &key); - } else /* (numChars > 1) */ { int i;