RFR: 8208377: Soft hyphens render if not using TextLayout [v5]

Alisen Chung achung at openjdk.org
Mon Feb 10 20:48:22 UTC 2025


On Mon, 10 Feb 2025 20:36:46 GMT, Daniel Gredler <dgredler at openjdk.org> wrote:

>> Soft hyphens should never render, regardless of the rendering path used internally.
>> 
>> This PR does not expand the categorization of "complex" characters in `FontUtilities` in order to force the use of `TextLayout` rendering code paths (as was discussed in JBS).
>> 
>> Instead, it takes the existing (limited) format-category checks in `sun.font.CMap` (a TrueType font helper class), expands it to a more general / complete default-ignorable check (`FontUtilities.isDefaultIgnorable(int)`), and then moves these checks out of `CMap` and up a level into the `CharToGlyphMapper` classes themselves.
>> 
>> The Type1 glyph mapper, the TTF glyph mapper, and the macOS glyph mapper have all been updated.
>
> Daniel Gredler has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains five additional commits since the last revision:
> 
>  - Merge branch 'master' into JDK-8208377
>  - Update copyright year
>  - Add more info about test fonts and default-ignorable chars
>  - Add macOS-specific char mapper changes
>  - Always use invisible glyphs for 'default ignorable' chars

Re-tested on my local machine and the test passes with the updated fix, LGTM

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

Marked as reviewed by achung (Committer).

PR Review: https://git.openjdk.org/jdk/pull/22670#pullrequestreview-2607129159


More information about the client-libs-dev mailing list