Rémi Bernon (@rbernon) commented about dlls/winemac.drv/keyboard.c:
UINT macdrv_ImeProcessKey(HIMC himc, UINT wparam, UINT lparam, const BYTE *key_state) { struct macdrv_thread_data *thread_data = macdrv_thread_data(); - WORD scan = HIWORD(lparam) & 0x1ff, vkey = LOWORD(wparam); + WORD vkey = LOWORD(wparam); BOOL repeat = !!(lparam >> 30), pressed = !(lparam >> 31); - unsigned int flags; - int keyc; - UINT ret;
- TRACE("himc %p, scan %#x, vkey %#x, repeat %u, pressed %u\n", - himc, scan, vkey, repeat, pressed); + TRACE("himc %p, vkey %#x, repeat %u, pressed %u\n", + himc, vkey, repeat, pressed);
+ thread_data->repeat = repeat; You should be able to get the repeat (resp. pressed) bits from ImeToAsciiEx vsc bit 14 (resp. 15), I think?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9992#note_129868