public void fireActionPerformed(ActionEvent ae_) { // Notify all the registered ActionListeners. super.fireActionPerformed(ae_); setPopupMenuVisible(true); // We get here when the popup menu has hidden itself. if (_popup.leftWasPressed()) { Toolkit.getDefaultToolkit().fireKeystroke(KeyEvent.VK_LEFT); SwingUtilities.invokeLater( new Runnable() { public void run() { Toolkit.getDefaultToolkit().fireKeystroke(KeyEvent.VK_ENTER); } }); } else if (_popup.rightWasPressed()) { Toolkit.getDefaultToolkit().fireKeystroke(KeyEvent.VK_RIGHT); SwingUtilities.invokeLater( new Runnable() { public void run() { Toolkit.getDefaultToolkit().fireKeystroke(KeyEvent.VK_ENTER); } }); } else if (!isTopLevelMenu()) { getAncestorWindow().hide(); } }