Alexandre Julliard pushed to branch master at wine / wine
Commits: b52ff2d6 by Byeong-Sik Jeon at 2025-04-09T12:22:42+02:00 win32u: Preserve result string from multiple WINE_IME_POST_UPDATE calls during ImeProcessKey.
In winemac.drv, there are multiple ime update calls occur during ImeProcessKey. These multiple ime update calls need to be properly merged into ‘data->update’. However, currently win32u/imm.c::post_ime_update() only keeps the last ime update call.
Valid rules are: - The previous comp_str is discarded when the new ime update call occurs, so it is only valid if the last ime update call comp_str is not NULL. - The previous result_str is kept if the new ime update call result_str is NULL. - If both the previous and the new ime update call result_str are not NULL, then concatenate them.
Test key sequences are: - "Japanese Romanji" : 'nihongo-SPACE-n' - "Korean 2-Set Keyboard" : 'r-k-s-k' - "Korean 2-Set Keyboard" : 'r-k-1" or 'r-k-SPACE'
- - - - -
1 changed file:
- dlls/win32u/imm.c
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/commit/b52ff2d69961bd1f3adc7ba386f179b...