Ticket #19876: 19876.3.patch

File 19876.3.patch, 1.9 KB (added by GerdP, 6 years ago)

solution, opendata plugin needs similar change in OpenPreferencesActions

  • src/org/openstreetmap/josm/actions/PreferencesAction.java

     
    77import java.awt.event.ActionEvent;
    88import java.awt.event.KeyEvent;
    99
     10import javax.swing.SwingUtilities;
     11
    1012import org.openstreetmap.josm.gui.MainApplication;
    1113import org.openstreetmap.josm.gui.preferences.PreferenceDialog;
    1214import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;
     
    104106    @Override
    105107    public void run() {
    106108        final PreferenceDialog p = new PreferenceDialog(MainApplication.getMainFrame());
    107         if (tab != null) {
    108             p.selectPreferencesTabByClass(tab);
    109         } else if (subTab != null) {
    110             p.selectSubPreferencesTabByClass(subTab);
    111         } else {
    112             p.selectPreviouslySelectedPreferences();
    113         }
     109        SwingUtilities.invokeLater(() -> {
     110            if (tab != null) {
     111                p.selectPreferencesTabByClass(tab);
     112            } else if (subTab != null) {
     113                p.selectSubPreferencesTabByClass(subTab);
     114            } else {
     115                p.selectPreviouslySelectedPreferences();
     116            }
     117        });
    114118        p.setVisible(true);
    115119    }
    116120}
  • src/org/openstreetmap/josm/gui/preferences/PreferenceDialog.java

     
    229229    public void dispose() {
    230230        previouslySelected = tpPreferences.getSelectedTab();
    231231        removeWindowListener(windowEventHandler);
     232        setVisible(false); // save current geometry
    232233        super.dispose();
    233234    }
    234235}