Is it necessary to introduce the NtUserNotifyIMEStatus syscall? Also, the parameter is winex11::xim specific, so it doesn't look generic.
I haven't actually done it, so I don't know what the challenges are. How does the implementation of this pattern look like? ``` BOOL WINAPI NotifyIME( HIMC himc, DWORD action, DWORD index, DWORD value ) { struct ime_driver_notify_ime_params = { .himc = himc, .action = action, .index = index, .value = value };
status = IME_DRIVER_UNIX_CALL( notify_ime, ¶ms ); if (status == SUCCESS) return TRUE; if (status != NOT_IMPLIMENTED_YIELD_TO_DEFAULT_ACTION) return FALSE;
/* builtin ime default action */ switch (action) { ...
```
I think it's time to move the imm.c::load_graphics_driver() ?