On Wed, 8 May 2024 05:53:38 GMT, Abhishek Kumar <abhis...@openjdk.org> wrote:
>> In GTK LAF, the menu mnemonics are always displayed which is different from >> the native behavior. In native application **(tested with gedit**), the menu >> mnemonics toggle on press of `ALT` key. Menu mnemonics are hidden initially >> and then toggles between show/hide on `ALT` press. >> Proposed fix is to handle the `ALT` key press for GTK LAF and mimic the >> native behavior. Fix is similar to the `ALT` key processing in Windows LAF. >> Automated test case is added to verify the fix and tested in Ubuntu and >> Oracle linux. >> >> CI testing is green and link attached in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional > commit since the last revision: > > Var moved to local scope src/java.desktop/share/classes/javax/swing/plaf/synth/SynthLookAndFeel.java line 668: > 666: KeyboardFocusManager.getCurrentKeyboardFocusManager(). > 667: addPropertyChangeListener(_handler); > 668: if (UIManager.getLookAndFeel().getName().contains("GTK")) { This doesn't seem like an ideal way of doing this. I don't see any precedent for this approach in the Swing implementation. We need some method that is more about the properties of a L&F rather than keying off name. Please look around at LookAndFeel and UIDefaults (etc) for a place you could store a property that tells you what to do. Or perhaps you this "altProcessor" would be the value you retrieve and if it is non-null you install it. Or perhaps this should be pushed down to the GTK L&F I don't know what the right answer is, I just don't think this approach is it. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/18992#discussion_r1595782003