A few months ago OSNews reported that the next version of Java (code name "Mustang") will feature native GTK components for the Swing API. This got us excited since, quite frankly, Swing's GTK look and feel has always been quite dissapointing. We downloaded the latest release candidate of JDK 1.6 to see how well the Swing GTK look and feel looks, we were quite pleased with what we found. Here are some screenshots of the SwingSet2 demo application included with the JDK, these were taken on Fedora Core 4. As can be seen in the screenshots, Mustang picks up the GNOME theme and renders Swing components appropriately.
Clearlooks Theme | Bluecurve Theme | Crux Theme | Glider Theme |
For comparison, the following screenshots show how a native application renders, using the same GNOME themes we used to test JDK 1.6 Swing rendering. In case you are wondering, the screenshots are of the preferences for the GEdit text editor included with most Linux distributions. Notice how the GUI components match the Mustang screenshots perfectly.
Clearlooks Theme | Bluecurve Theme | Crux Theme | Glider Theme |
Last, but not least, here are some screenshots of the SwingSet2 application running on JDK 1.5 (Tiger). In this set, The Bluecurve GNOME theme is the one that best matches the native components, and even that one is not perfect.
Clearlooks Theme | Bluecurve Theme | Crux Theme | Glider Theme |
Was it pressure from SWT that finally made Swing look like it belongs in the desktop? Whatever the reason, we would like to congratulate Java's Swing team for a job well done.