On Mon, 27 Nov 2023 17:07:38 GMT, Martin Fox <m...@openjdk.org> wrote:

> The changes submitted in PR #1209 broke IME input on macOS 12 and 13 (at 
> least on Apple Silicon). Calling charactersByApplyingModifiers on an NSEvent 
> alters its state in some way that confuses NSTextInputContext.handleEvent. 
> The result is that all key events are discarded if an IME is active. Apple 
> fixed this bug in macOS 14 Sonoma.
> 
> In this PR we switch to using the same Carbon call that we started using in 
> PR #425 (jfx21) to query the keyboard layout.
> 
> This is a new implementation of the fix for 
> [JDK-8087700](https://bugs.openjdk.org/browse/JDK-8087700) so that bug will 
> need to be re-tested.

A short test appears to have solved the problem caused by side effects.
I also found a known IME related issue, but am concerned that this fix will not 
complicate it.

Steps to reproduce:

Click on another TextInput control in the middle of an IME conversion in the 
TextInput control to move the focus.

Issue:

IME conversion candidate popup moves to the clicked destination,
locked into an input disabled state in the original TextInput.

Expected Behavior:

The conversion is committed.
The IME conversion candidate popup is closed.

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

PR Comment: https://git.openjdk.org/jfx/pull/1295#issuecomment-1829461616

Reply via email to