-
Bug
-
Resolution: Fixed
-
P2
-
jfx20
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8302141 | jfx21 | Dukebot | P2 | Resolved | Fixed | b04 |
Normally the IME is enabled by default on controls that accept text input. This is not working in JavaFX 20. No OnInputMethodEvent handler is being installed so when the Scene is establishing focus it’s not calling into the platform to enable InputMethodEvents. I’ve confirmed that this was working in JavaFX 19.
To reproduce open any JavaFX app that contains a TextField or TextArea and try to enter, say, Japanese text. On a Mac there's an easier test if you're using a US keyboard: press Option+e followed by e. You should see an accent followed by an accented e. If you don't see the initial accent it's because the Scene hasn't enabled the IME. I've only tested those two controls, the bug may affect others. I have confirmed this is cross-platform.
To reproduce open any JavaFX app that contains a TextField or TextArea and try to enter, say, Japanese text. On a Mac there's an easier test if you're using a US keyboard: press Option+e followed by e. You should see an accent followed by an accented e. If you don't see the initial accent it's because the Scene hasn't enabled the IME. I've only tested those two controls, the bug may affect others. I have confirmed this is cross-platform.
- backported by
-
JDK-8302141 InputMethodEvents are not enabled for text input controls
- Resolved
- relates to
-
JDK-8268877 TextInputControlSkin: incorrect inputMethod event handler after switching skin
- Resolved