On Fri, 2 Apr 2021 19:47:30 GMT, mstr2 <[email protected]>
wrote:
> This PR fixes incorrect parsing of mnemonic symbols in the following cases:
> 1. an escaped double underscore incorrectly shows up as a double underscore
> in displayed text
> 2. an extended mnemonic incorrectly removes a part of adjacent text
>
> As a side effect, this PR also fixes another undocumented issue for multiline
> text where text metrics calculations incorrectly operate on text for which
> mnemonic symbols have not been processed.
>
> This can lead to a glitch where the mnemonic underscore makes a text just
> long enough to wrap to a new line, but when the text is rendered, the second
> line shows up entirely empty. The reason for this is that for rendering, the
> text is laid out _after_ mnemonic symbols have been removed.
>
> The solution is to _always_ use processed text ("_clean text_") when laying
> out text.
Since extended mnemonics don't seem to work either before or after your fix --
meaning you can't use the extended mnemonic character to select the button or
action -- we can treat that as a separate issue.
So this fix looks good to me.
-------------
Marked as reviewed by kcr (Lead).
PR: https://git.openjdk.java.net/jfx/pull/453