On Thu, 12 Dec 2024 11:41:20 GMT, Helly Guo <d...@openjdk.org> wrote:

>> Finally, I got the point. Fcitx5 has a setting entry: `Show preedit in 
>> application`. If this is on, it works well. If this is off, the value 
>> `im_ctx.on_preedit` will get `false` when im(`fcitx5`) finished 
>> input-action. Then, the input will not show in the TextField.
>> 
>> ![wechat_2024-12-12_193021_345](https://github.com/user-attachments/assets/9cab3844-8166-43fe-b69d-bda00f422e90)
>
> ![pic_20241212193112](https://github.com/user-attachments/assets/7b9233f9-3af5-42d5-89f9-9f85248d68dd)
> 
> The option is surrounded by a red box.

@hellyguo Thanks so much for tracking this down and providing all the details. 
I would like to better understand what that checkbox does but I might not be 
able to get to that until next week.

JavaFX handles keyboard entry using two mechanisms, KeyEvents and 
InputMethodEvents. This corresponds to the way Windows works. On Mac and Linux 
the OS only uses one channel (basically InputMethodEvents) and we have to apply 
a simple heuristic to map this to JavaFX's two-channel approach. This checkbox 
seems to be upsetting that logic.

(I work on the Mac side of this and @tsayao works on the Linux side. I just do 
testing on Linux because it's easy for me to create new virtual machines.)

-------------

PR Review Comment: https://git.openjdk.org/jfx/pull/1080#discussion_r1882371128

Reply via email to