@Override public void uninstallUI(JComponent c) { AbstractButton button = (AbstractButton) c; ButtonInfo info = getButtonInfo(button); button.removeMouseListener(info.basicListener); button.removeMouseMotionListener(info.basicListener); button.removeFocusListener(info.basicListener); button.removePropertyChangeListener(info.basicListener); button.removeChangeListener(info.basicListener); button.removeKeyListener(focusArrowListener); button.removeComponentListener(componentListener); button.removeKeyListener(keyArmingListener); button.removePropertyChangeListener(positionAndShapeListener); super.uninstallUI(c); }