The standard across all platforms is:

- A dead key followed by a composable character generates the composed 
character. For example, a circumflex dead key followed by an 'e' should 
generate 'ê'.
- A dead key followed by a character that can't compose with it generates a 
spacing character followed by the non-composable character. On Windows US 
International a circumflex dead key followed by a 'q' generates '^q'. The 
spacing character corresponding to the dead key varies based on the OS and 
layout.
- An exception is SPACE. On all platforms a dead key followed by SPACE should 
generate just the spacing version of the dead key but *not* a space character. 
Users rely on this shortcut to quickly access the character 'hidden' by the 
dead key.

The Windows glass code didn't implement the Space exception. This PR fixes that.

On Windows the US  US International layout. Shift+6 is the dead key for a 
circumflex diacritic if you want to test out the combinations mentioned above.

For some reason Windows 11 hides this setting well. To install a US 
International layout:
- Go to Settings > Time & Language > Language & Region.
- In the entry for English click on the three dots to the far right and select 
'Language Options'. 
- Scroll down until you see 'Installed keyboards' and select 'Add a keyboard'.
- From the list select "United States - International".
To actually use the layout look to the right of the Task Bar and you should see 
a button for choosing the layout (it will contain the word "ENG").

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

Commit messages:
 - A dead key followed by Space generates a single character, not two

Changes: https://git.openjdk.org/jfx/pull/1584/files
  Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=1584&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8340982
  Stats: 8 lines in 1 file changed: 5 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/jfx/pull/1584.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1584/head:pull/1584

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

Reply via email to