Index: trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java	(revision 15284)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java	(revision 15287)
@@ -27,4 +27,5 @@
 
 import javax.swing.AbstractAction;
+import javax.swing.DefaultButtonModel;
 import javax.swing.DefaultListSelectionModel;
 import javax.swing.ImageIcon;
@@ -38,5 +39,4 @@
 import javax.swing.JTabbedPane;
 import javax.swing.JTable;
-import javax.swing.JToggleButton.ToggleButtonModel;
 import javax.swing.ListSelectionModel;
 import javax.swing.SingleSelectionModel;
@@ -125,5 +125,5 @@
         wfLabel.setLabelFor(cbWireframe);
 
-        cbWireframe.setModel(new ToggleButtonModel() {
+        cbWireframe.setModel(new DefaultButtonModel() {
             @Override
             public void setSelected(boolean b) {
Index: trunk/src/org/openstreetmap/josm/gui/widgets/NativeFileChooser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/widgets/NativeFileChooser.java	(revision 15284)
+++ trunk/src/org/openstreetmap/josm/gui/widgets/NativeFileChooser.java	(revision 15287)
@@ -4,5 +4,4 @@
 import java.awt.Component;
 import java.awt.FileDialog;
-import java.awt.Frame;
 import java.io.File;
 import java.io.FilenameFilter;
@@ -35,5 +34,5 @@
      */
     public NativeFileChooser(File file) {
-        fileDialog = new FileDialog((Frame) MainApplication.getMainFrame());
+        fileDialog = new FileDialog(MainApplication.getMainFrame());
         if (file != null) {
             fileDialog.setDirectory(file.getAbsolutePath());
Index: trunk/src/org/openstreetmap/josm/gui/widgets/QuadStateCheckBox.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/widgets/QuadStateCheckBox.java	(revision 15284)
+++ trunk/src/org/openstreetmap/josm/gui/widgets/QuadStateCheckBox.java	(revision 15287)
@@ -131,10 +131,6 @@
     /**
      * Button model for the {@code QuadStateCheckBox}.
-     * It previously only implemented (and still could) the {@code ButtonModel} interface.
-     * But because of JDK-8182577 (Java 9 regression) it now extends {@code ToggleButtonModel} as a workaround.
-     * The previous implementation can be restored after Java 9 EOL (March 2018).
-     * See also https://bugs.openjdk.java.net/browse/JDK-8182695 - https://bugs.openjdk.java.net/browse/JDK-8182577
-     */
-    private final class QuadStateDecorator extends ToggleButtonModel {
+     */
+    private final class QuadStateDecorator implements ButtonModel {
         private final ButtonModel other;
         private String propertyText;
