< prev index next >

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

Print this page

        

@@ -258,12 +258,20 @@
 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);
+    }
 
-    CGEventRef event = CGEventCreateKeyboardEvent(NULL, keyCode, keyPressed);
     if (event != NULL) {
         CGEventPost(kCGSessionEventTap, event);
         CFRelease(event);
     }
 }
< prev index next >