--- old/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalRadioButtonUI.java 2016-03-18 19:31:02.000000000 +0400 +++ new/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalRadioButtonUI.java 2016-03-18 19:31:01.000000000 +0400 @@ -75,6 +75,8 @@ private boolean defaults_initialized = false; + private TextUIDrawing textUIDrawing; + // ******************************** // Create PlAF // ******************************** @@ -108,11 +110,16 @@ defaults_initialized = true; } LookAndFeel.installProperty(b, "opaque", Boolean.TRUE); + textUIDrawing = SwingUtilities2.getTextUIDrawing(textUIDrawing); } protected void uninstallDefaults(AbstractButton b) { super.uninstallDefaults(b); defaults_initialized = false; + if (textUIDrawing != SwingUtilities2.DEFAULT_UI_TEXT_DRAWING + && textUIDrawing instanceof UIResource) { + textUIDrawing = SwingUtilities2.DEFAULT_UI_TEXT_DRAWING; + } } // ******************************** @@ -244,7 +251,7 @@ // *** paint the text disabled g.setColor(getDisabledTextColor()); } - SwingUtilities2.drawStringUnderlineCharAt(c,g,text, + textUIDrawing.drawStringUnderlineCharAt(c,g,text, mnemIndex, textRect.x, textRect.y + fm.getAscent()); } if(b.hasFocus() && b.isFocusPainted() &&