< prev index next >

src/java.desktop/macosx/native/libawt_lwawt/awt/CRobot.m

Print this page

        

*** 258,269 **** JNIEXPORT void JNICALL Java_sun_lwawt_macosx_CRobot_keyEvent (JNIEnv *env, jobject peer, jint javaKeyCode, jboolean keyPressed) { CGKeyCode keyCode = GetCGKeyCode(javaKeyCode); - CGEventRef event = CGEventCreateKeyboardEvent(NULL, keyCode, keyPressed); if (event != NULL) { CGEventPost(kCGSessionEventTap, event); CFRelease(event); } } --- 258,277 ---- JNIEXPORT void JNICALL Java_sun_lwawt_macosx_CRobot_keyEvent (JNIEnv *env, jobject peer, jint javaKeyCode, jboolean keyPressed) { CGKeyCode keyCode = GetCGKeyCode(javaKeyCode); + CGEventRef event; + + if(keyCode != OSX_Undefined) { + event = CGEventCreateKeyboardEvent(NULL, keyCode, keyPressed); + } else { + UniChar uCh = javaKeyCode; + event = CGEventCreateKeyboardEvent(NULL, 0, keyPressed); + CGEventKeyboardSetUnicodeString(event, 1, uCh); + } if (event != NULL) { CGEventPost(kCGSessionEventTap, event); CFRelease(event); } }
< prev index next >