RFR: 8356652: Input field ignores custom input source characters [v2]
Andy Goryachev
angorya at openjdk.org
Fri May 16 23:04:56 UTC 2025
On Fri, 16 May 2025 22:25:20 GMT, Martin Fox <mfox at openjdk.org> wrote:
>> Under the hood the Keyman input method appears as a US English keyboard layout. The characters attached to an NSEvent are always US English Roman even if the selected Keyman layout is, say, Hebrew or Dvorak. Keyman sends the correct Hebrew or Dvorak character to insertText:replacementRange: instead.
>>
>> This PR special-cases the Keyman layout, detecting it using the same method that AWT does. When Keyman is active Glass records the insertText: character and uses that when sending out KeyEvents.
>
> Martin Fox has updated the pull request incrementally with one additional commit since the last revision:
>
> Second try at making Keyman work to some extent
As far as I can tell, this version works as expected.
I found one irregularity with the ISIS Devanagari keyboard: unmapped 'w' produces w symbol, unmapped punctuation keys produce corresponding symbols, but unmapped 'x' produces no input. This could be the keyman problem though.
It is weird that we have to add third-party specific code to JavaFX as a workaround - why doesn't macOS provide a general purpose API for this?
-------------
PR Comment: https://git.openjdk.org/jfx/pull/1805#issuecomment-2887816404
More information about the openjfx-dev
mailing list