ui: remove ambiguity in mnemonics parsing

Disabling mnemonics should not change displayed action text.
This commit is contained in:
Aleksey Pivovarov
2019-02-06 11:40:21 +03:00
parent 5b138db1f4
commit a06f99d859
@@ -148,14 +148,8 @@ public final class Presentation implements Cloneable {
if (i >= text.length()) break;
ch = text.charAt(i);
if (ch != '_' && ch != '&') {
if (UISettings.getInstance().getDisableMnemonicsInControls()) {
myMnemonic = 0;
myDisplayedMnemonicIndex = -1;
}
else {
myMnemonic = Character.toUpperCase(ch); // mnemonics are case insensitive
myDisplayedMnemonicIndex = i - 1 - backShift;
}
myMnemonic = Character.toUpperCase(ch); // mnemonics are case insensitive
myDisplayedMnemonicIndex = i - 1 - backShift;
}
else {
backShift++;
@@ -173,6 +167,11 @@ public final class Presentation implements Cloneable {
myText = null;
}
if (UISettings.getInstance().getDisableMnemonicsInControls()) {
myMnemonic = 0;
myDisplayedMnemonicIndex = -1;
}
fireObjectPropertyChange(PROP_TEXT, oldText, myText);
fireObjectPropertyChange(PROP_MNEMONIC_KEY, oldMnemonic, myMnemonic);
fireObjectPropertyChange(PROP_MNEMONIC_INDEX, oldDisplayedMnemonicIndex, myDisplayedMnemonicIndex);