RFR: 8367045: [Linux] Dead keys not working

Martin Fox mfox at openjdk.org
Tue Sep 30 18:25:15 UTC 2025


This bug seems to only apply to Linux systems with no input method framework (IMF) configured. If you want to reproduce the original bug on Ubuntu 24.04 you need to go into Settings > System > "Region & Language" > "Manage installed languages" > Language and verify that "Keyboard input method system" is set to "none". If you change this setting you should reboot the system.

Normally at the end of a dead-key sequence the IMF sends us a "commit" with the composed character followed by a "preedit-end" signal. When no IMF is configured these signals arrive in reverse order. This is not the way any IMF works and is confusing the heuristic we use to determine whether to send a KeyEvent or an InputMethodEvent.

To insulate ourselves against this signal ordering issue we add a new flag that ensures that if we're in the preedit window when we start filtering an event we stay there until filtering is done.

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

Commit messages:
 - Ensure pre-edit logic applies regardless of signal order

Changes: https://git.openjdk.org/jfx/pull/1924/files
  Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=1924&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8367045
  Stats: 13 lines in 2 files changed: 12 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jfx/pull/1924.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1924/head:pull/1924

PR: https://git.openjdk.org/jfx/pull/1924


More information about the openjfx-dev mailing list