Ticket #20706: antialias_v5.patch
File antialias_v5.patch, 3.1 KB (added by , 3 years ago) |
---|
-
src/org/openstreetmap/josm/gui/MainApplication.java
12 12 import java.awt.Font; 13 13 import java.awt.GraphicsEnvironment; 14 14 import java.awt.GridBagLayout; 15 import java.awt.RenderingHints; 15 16 import java.awt.Toolkit; 16 17 import java.io.File; 17 18 import java.io.IOException; … … 1163 1164 scaleFonts(Config.getPref().getDouble("gui.scale.list.font", 1.0), 1164 1165 "List.font"); 1165 1166 // "Table.font" see org.openstreetmap.josm.gui.util.TableHelper.setFont 1167 1168 setupTextAntiAliasing(); 1166 1169 } 1167 1170 1168 1171 private static void scaleFonts(double factor, String... fonts) { … … 1178 1181 } 1179 1182 } 1180 1183 1184 private static void setupTextAntiAliasing() { 1185 // On Linux and running on Java 9+, enable text anti aliasing 1186 // if not yet enabled and if neither running on Gnome or KDE desktop 1187 if (PlatformManager.isPlatformUnixoid() 1188 && Utils.getJavaVersion() >= 9 1189 && UIManager.getLookAndFeelDefaults().get(RenderingHints.KEY_TEXT_ANTIALIASING) == null 1190 && System.getProperty("awt.useSystemAAFontSettings") == null 1191 && Toolkit.getDefaultToolkit().getDesktopProperty("gnome.Xft/Antialias") == null 1192 && Toolkit.getDefaultToolkit().getDesktopProperty("fontconfig/Antialias") == null) { 1193 UIManager.getLookAndFeelDefaults().put(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); 1194 UIManager.getLookAndFeelDefaults().put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); 1195 } 1196 } 1197 1181 1198 static Collection<PluginInformation> updateAndLoadEarlyPlugins(SplashScreen splash, SplashProgressMonitor monitor) { 1182 1199 Collection<PluginInformation> pluginsToLoad; 1183 1200 pluginsToLoad = PluginHandler.buildListOfPluginsToLoad(splash, monitor.createSubTaskMonitor(1, false)); -
src/org/openstreetmap/josm/gui/widgets/JosmEditorPane.java
3 3 4 4 import java.awt.Color; 5 5 import java.awt.Font; 6 import java.awt.Graphics; 7 import java.awt.Graphics2D; 8 import java.awt.RenderingHints; 6 9 import java.io.IOException; 7 10 import java.io.InputStream; 8 11 import java.net.URL; … … 86 89 return conn.getContent(); 87 90 } 88 91 92 @Override 93 public void paintComponent(Graphics g) { 94 // Force antialiasing within the JosmEditorPane for antialiased bullet points 95 Graphics2D g2d = (Graphics2D) g.create(); 96 g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); 97 super.paintComponent(g2d); 98 g2d.dispose(); 99 } 100 89 101 /** 90 102 * Adapts a {@link JEditorPane} to be used as a powerful replacement of {@link javax.swing.JLabel}. 91 103 * @param pane The editor pane to adapt