diff --git a/key/keypress_c.h b/key/keypress_c.h index 5630828..da63ae4 100644 --- a/key/keypress_c.h +++ b/key/keypress_c.h @@ -16,7 +16,7 @@ /* Convenience wrappers around ugly APIs. */ #if defined(IS_WINDOWS) #define WIN32_KEY_EVENT_WAIT(key, flags) \ - (win32KeyEvent(key, flags), Sleep(DEADBEEF_RANDRANGE(0, 63))) + (win32KeyEvent(key, flags), Sleep(DEADBEEF_RANDRANGE(0, 1))) #elif defined(USE_X11) #define X_KEY_EVENT(display, key, is_press) \ (XTestFakeKeyEvent(display, \ @@ -25,7 +25,7 @@ XSync(display, false)) #define X_KEY_EVENT_WAIT(display, key, is_press) \ (X_KEY_EVENT(display, key, is_press), \ - microsleep(DEADBEEF_UNIFORM(0.0, 62.5))) + microsleep(DEADBEEF_UNIFORM(0.0, 0.5))) #endif #if defined(IS_MACOSX) @@ -43,6 +43,7 @@ static io_connect_t _getAuxiliaryKeyDriver(void){ service = IOIteratorNext( iter ); assert(service); + kr = IOServiceOpen(service, mach_task_self(), kIOHIDParamConnectType, &sEventDrvrRef ); assert(KERN_SUCCESS == kr); @@ -124,8 +125,10 @@ void toggleKeyCode(MMKeyCode code, const bool down, MMKeyFlags flags){ code = code - 1000; /* Get the real keycode. */ NXEventData event; kern_return_t kr; + IOGPoint loc = { 0, 0 }; UInt32 evtInfo = code << 16 | (down?NX_KEYDOWN:NX_KEYUP) << 8; + bzero(&event, sizeof(NXEventData)); event.compound.subType = NX_SUBTYPE_AUX_CONTROL_BUTTONS; event.compound.misc.L[0] = evtInfo; @@ -269,7 +272,6 @@ void toggleUnicode(UniChar ch, const bool down){ XTestFakeKeyEvent(dpy, code, False, 1); XFlush(dpy); - XCloseDisplay(dpy); return 0; @@ -351,7 +353,7 @@ void typeStringDelayed(const char *str, const unsigned cpm){ unicodeType(n); if (mspc > 0) { - microsleep(mspc + (DEADBEEF_UNIFORM(0.0, 62.5))); + microsleep(mspc + (DEADBEEF_UNIFORM(0.0, 0.5))); } } } \ No newline at end of file