RFR: 8256372: [macos] Unexpected symbol was displayed on JTextField with Monospaced font

Phil Race prr at openjdk.java.net
Tue May 18 16:03:59 UTC 2021


See the bug report for lots of explanation.
The short version (not that short) is that Swing adds a new line char to editable TextComponents
It used to work because harfbuzz asked CoreText which mapped it to an invisible glyph
Now harfbuzz does its own processing of AAT fonts it is different.
Harfbuzz looks up the mapping for this but there is none so it gets a missing glyph.

Solution: Since HB now does AAT processing we can dispense with all the special handling of that case
and core text and just treat AAT fonts like OT fonts. 
This means its gets the same mapping we get when not using Layout.

And the test passes on all platforms .. not just macOS ..

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

Commit messages:
 - 8256372: [macos] Unexpected symbol was displayed on JTextField with Monospaced font

Changes: https://git.openjdk.java.net/jdk/pull/4097/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=4097&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8256372
  Stats: 1425 lines in 9 files changed: 65 ins; 1352 del; 8 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4097.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4097/head:pull/4097

PR: https://git.openjdk.java.net/jdk/pull/4097



More information about the build-dev mailing list