RFR: 8241192: [macosx] Wrong letter typed after ´ symbol when using Finnish layout
Nikita Provotorov
duke at openjdk.java.net
Mon Feb 21 09:43:51 UTC 2022
On Fri, 28 Jan 2022 09:38:35 GMT, Prasanta Sadhukhan <psadhukhan at openjdk.org> wrote:
> If we press " ´ " (on U.S. keyboard layout it is the [+] button just before the [delete] button), and then press "s" , 2 "´" characters are entered in a text field instead of "´s" with "Finish" keyboard layout.
> This is because, although " ´ " is construed as "complex" char and inserted properly the next "s" character is treated as non-complex character as it's utf8Length is 1 and utf16Length is 2, so we need to explicitly make it a "complex" char sequence if the code point is 0x73 ie "s" in Finnish layout for it to be inserted properly.
As far as I understand the bug affects all of keyboard layouts have [combining characters](https://en.wikipedia.org/wiki/Combining_character) except the `U.S. International PC` layout because it's handled explicitly at [CPlatformResponder.java:189-191](https://github.com/openjdk/jdk/blob/51f4420711b8cace5733180b3291779f11291895/src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformResponder.java#L189).
-------------
PR: https://git.openjdk.java.net/jdk/pull/7262
More information about the client-libs-dev
mailing list