< prev index next >

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

Print this page

        

*** 264,285 **** * no idea how to solve them without inserting delays between simulated * events. So, I've ended up disabling it and opted for another approach * that uses Accessibility API instead. */ CGKeyCode keyCode = GetCGKeyCode(javaKeyCode); ! AXUIElementRef elem = AXUIElementCreateSystemWide(); ! AXUIElementPostKeyboardEvent(elem, (CGCharCode)0, keyCode, keyPressed); ! CFRelease(elem); ! ! #if 0 ! CGEventRef event = CGEventCreateKeyboardEvent(NULL, keyCode, keyPressed); if (event != NULL) { CGEventPost(kCGSessionEventTap, event); CFRelease(event); } - #endif } /* * Class: sun_lwawt_macosx_CRobot * Method: nativeGetScreenPixels --- 264,294 ---- * no idea how to solve them without inserting delays between simulated * events. So, I've ended up disabling it and opted for another approach * that uses Accessibility API instead. */ CGKeyCode keyCode = GetCGKeyCode(javaKeyCode); ! // AXUIElementRef elem = AXUIElementCreateSystemWide(); ! // AXUIElementPostKeyboardEvent(elem, (CGCharCode)0, keyCode, keyPressed); ! // CFRelease(elem); ! ! /* ! * JDK-8155740: AXUIElementPostKeyboardEvent posts 0 key code for all ! * the modifier keys with key codes (16, 17,18, 20, 157) and also for ! * newly added modifier key VK_ALT_GRAPH. But it posts correct key code ! * for all the other keys. On the other hand CGEventCreateKeyboardEvent ! * posts correct key code for all the keys and hence it is used to post ! * all the key events instead of AXUIElementPostKeyboardEvent. ! * Key code for modifier key is required to distinguish between ALT and ! * ALT-GR key for fixing issue 8155740. ! */ ! CGEventSourceRef source = CGEventSourceCreate(kCGEventSourceStateHIDSystemState); ! CGEventRef event = CGEventCreateKeyboardEvent(source, keyCode, keyPressed); if (event != NULL) { CGEventPost(kCGSessionEventTap, event); CFRelease(event); } } /* * Class: sun_lwawt_macosx_CRobot * Method: nativeGetScreenPixels
< prev index next >