On Wed, 19 Aug 2026 13:13:51 GMT, eduardsdv <[email protected]> wrote:
>> This PR fixes the StringIndexOutOfBoundsException, that occurs when an empty >> text is set to a Labeled, that previously contained a mnemonic. >> >> The reason for the error is that the ``updateDisplayedText(double, >> double)``, which also updates ``containsMnemonic`` flag, was not invoked if >> the text was empty. The value of this flag was still ``true`` but the index >> of the mnemonic character inside ``MnemonicInfo`` had already been updated >> to -1. This led to the StringIndexOutOfBoundsException in the line 611. >> >> I fixed it by moving the call to ``updateDisplayedText(double, double)`` >> outside the if-clause, so that it is always called when the text is being >> laid out. This should not affect performance because the method already >> checks whether recalculation is required. If not, it exits quickly. >> >> --------- >> - [X] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > eduardsdv has updated the pull request incrementally with one additional > commit since the last revision: > > 8389970: Add additional test and fix failed cases The tests now also check that no additional nodes are added to the scene graph when the mnemonics are unavailable. This is the case when: - Platform is Mac - MnemonicParsing is false - ContentDisplay is ``ContentDisplay.GRAPHIC_ONLY`` - text is null, empty or does not contain mnemonic ------------- PR Comment: https://git.openjdk.org/jfx/pull/2253#issuecomment-5342680683
