--- old/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicLabelUI.java	2018-04-10 15:05:55.577209999 +0530
+++ new/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicLabelUI.java	2018-04-10 15:05:55.325209999 +0530
@@ -36,6 +36,7 @@
 
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.awt.event.InputEvent;
 import java.awt.event.KeyEvent;
 import java.awt.Component;
 import java.awt.Container;
@@ -402,6 +403,9 @@
             }
             inputMap.clear();
             inputMap.put(KeyStroke.getKeyStroke(dka, BasicLookAndFeel.getFocusAcceleratorKeyMask(), false), "press");
+            inputMap.put(KeyStroke.getKeyStroke(dka,
+                    BasicLookAndFeel.getFocusAcceleratorKeyMask() |
+                            InputEvent.ALT_GRAPH_DOWN_MASK, false), "press");
         }
         else {
             InputMap inputMap = SwingUtilities.getUIInputMap
@@ -520,6 +524,9 @@
                 int dka = label.getDisplayedMnemonic();
                 putOnRelease(inputMap, dka, BasicLookAndFeel
                         .getFocusAcceleratorKeyMask());
+                putOnRelease(inputMap, dka, BasicLookAndFeel
+                        .getFocusAcceleratorKeyMask() |
+                        InputEvent.ALT_GRAPH_DOWN_MASK);
                 // Need this when the sticky keys are enabled
                 putOnRelease(inputMap, dka, 0);
                 // Need this if ALT is released before the accelerator
@@ -539,6 +546,9 @@
                         int dka = label.getDisplayedMnemonic();
                         removeOnRelease(inputMap, dka, BasicLookAndFeel
                                 .getFocusAcceleratorKeyMask());
+                        removeOnRelease(inputMap, dka, BasicLookAndFeel
+                                .getFocusAcceleratorKeyMask() |
+                                InputEvent.ALT_GRAPH_DOWN_MASK);
                         removeOnRelease(inputMap, dka, 0);
                         removeOnRelease(inputMap, KeyEvent.VK_ALT, 0);
                     }
@@ -555,6 +565,9 @@
                     } else {
                         putOnRelease(inputMap, dka, BasicLookAndFeel
                                 .getFocusAcceleratorKeyMask());
+                        putOnRelease(inputMap, dka, BasicLookAndFeel
+                                .getFocusAcceleratorKeyMask() |
+                                InputEvent.ALT_GRAPH_DOWN_MASK);
                         // Need this when the sticky keys are enabled
                         putOnRelease(inputMap, dka, 0);
                     }
@@ -572,6 +585,9 @@
                         if (isCommand) {
                             removeOnRelease(inputMap, dka, BasicLookAndFeel
                                     .getFocusAcceleratorKeyMask());
+                            removeOnRelease(inputMap, dka, BasicLookAndFeel
+                                    .getFocusAcceleratorKeyMask() |
+                                    InputEvent.ALT_GRAPH_DOWN_MASK);
                             removeOnRelease(inputMap, dka, 0);
                         } else {
                             removeOnRelease(inputMap, KeyEvent.VK_ALT, 0);
