JDK-8227570 : Additional information to JDK-8226215
  • Type: Bug
  • Component: client-libs
  • Sub-Component: javax.swing
  • Affected Version: 11.0.3-oracle
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_10
  • CPU: x86_64
  • Submitted: 2019-06-12
  • Updated: 2023-08-29
  • Resolved: 2019-07-11
Related Reports
Duplicate :  
Description
A DESCRIPTION OF THE PROBLEM :
I was able to resolve the issue by changing `BasicToggleButtonUI` to use `SwingUtilities2.getFontMetrics(c, g)` instead of `g.getFontMetrics()`. See source code for the patch.


---------- BEGIN SOURCE ----------
diff -r 175eb80c253a src/java.desktop/share/classes/javax/swing/plaf/basic/BasicToggleButtonUI.java
--- a/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicToggleButtonUI.java    Wed Apr 03 02:25:37 2019 +0100
+++ b/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicToggleButtonUI.java    Wed Jun 12 14:12:22 2019 -0400
@@ -25,6 +25,7 @@
 
 package javax.swing.plaf.basic;
 
+import sun.swing.SwingUtilities2;
 import sun.awt.AppContext;
 
 import java.awt.*;
@@ -82,7 +83,7 @@
         ButtonModel model = b.getModel();
 
         Dimension size = b.getSize();
-        FontMetrics fm = g.getFontMetrics();
+        FontMetrics fm = SwingUtilities2.getFontMetrics(c, g);
 
         Insets i = c.getInsets();

---------- END SOURCE ----------

FREQUENCY : always