Martin:

I am trying to collect the JBS tickets that might impact a rich text control.


I am not sure why Windows does not go through InputMethodEvents, but it looks 
like there is enough inconsistency in the behavior on Linux to warrant a 
defect.  Looks like someone was working on a fix and then it got dropped.

-andy



From: Martin Fox <[email protected]>
Date: Friday, January 27, 2023 at 13:55
To: Andy Goryachev <[email protected]>
Cc: openjfx-dev <[email protected]>
Subject: [External] : Re: Q: missing APIs needed for implementation of a rich 
text control
Andy,

Could you elaborate on why you want to see KeyEvents for dead keys on Linux? 
https://bugs.openjdk.org/browse/JDK-8172867

On Windows dead keys are delivered as KeyEvents. The dead keys generate 
KEY_PRESSED events and the final composed character is delivered in a KEY_TYPED 
event. This reflects how the OS handles dead keys.

On Mac dead keys are handled using InputMethodEvents. The dead keys generated 
composed events and the final character is presented as committed text. This 
also reflects how the OS handles dead keys.

X11 follows the Mac model but JavaFX does not implement this completely (it 
only sends the final commit event). I haven’t delved into the code in detail 
but I suspect fleshing out the InputMethodEvent path to match the Mac would be 
much easier than trying to force Linux to deliver the same event stream as 
Windows.

Martin

Reply via email to