Skip to content

Commit 4aea6b5

Browse files
committed
Add SwingUtilities to SaveSettings.
1 parent ba842ab commit 4aea6b5

File tree

2 files changed

+10
-11
lines changed

2 files changed

+10
-11
lines changed

tmc-plugin/src/fi/helsinki/cs/tmc/actions/RefreshCoursesAction.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,7 @@
99
import fi.helsinki.cs.tmc.model.ServerAccess;
1010
import fi.helsinki.cs.tmc.model.TmcCoreSingleton;
1111
import fi.helsinki.cs.tmc.model.NBTmcSettings;
12-
import fi.helsinki.cs.tmc.utilities.BgTaskListener;
1312
import fi.helsinki.cs.tmc.ui.ConvenientDialogDisplayer;
14-
import fi.helsinki.cs.tmc.utilities.BgTask;
15-
import fi.helsinki.cs.tmc.utilities.CancellableCallable;
1613
import fi.helsinki.cs.tmc.utilities.FutureCallbackList;
1714
import hy.tmc.core.TmcCore;
1815
import hy.tmc.core.exceptions.TmcCoreException;

tmc-plugin/src/fi/helsinki/cs/tmc/actions/SaveSettingsAction.java

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,10 @@
77
import fi.helsinki.cs.tmc.model.NBTmcSettings;
88
import fi.helsinki.cs.tmc.ui.PreferencesUI;
99
import fi.helsinki.cs.tmc.ui.DownloadOrUpdateExercisesDialog;
10-
import fi.helsinki.cs.tmc.utilities.BgTaskListener;
11-
import hy.tmc.core.exceptions.TmcCoreException;
1210
import java.awt.event.ActionEvent;
1311
import java.util.List;
1412
import javax.swing.AbstractAction;
15-
import org.openide.util.Exceptions;
13+
import javax.swing.SwingUtilities;
1614

1715
public class SaveSettingsAction extends AbstractAction {
1816

@@ -53,10 +51,15 @@ public void actionPerformed(ActionEvent e) {
5351
refresh.addListener(new FutureCallback<List<Course>>() {
5452
@Override
5553
public void onSuccess(List<Course> v) {
56-
LocalExerciseStatus status = LocalExerciseStatus.get(courseDb.getCurrentCourseExercises());
57-
if (status.thereIsSomethingToDownload(false)) {
58-
DownloadOrUpdateExercisesDialog.display(status.unlockable, status.downloadableUncompleted, status.updateable);
59-
}
54+
SwingUtilities.invokeLater(new Runnable() {
55+
@Override
56+
public void run() {
57+
LocalExerciseStatus status = LocalExerciseStatus.get(courseDb.getCurrentCourseExercises());
58+
if (status.thereIsSomethingToDownload(false)) {
59+
DownloadOrUpdateExercisesDialog.display(status.unlockable, status.downloadableUncompleted, status.updateable);
60+
}
61+
}
62+
});
6063
}
6164

6265
@Override
@@ -65,7 +68,6 @@ public void onFailure(Throwable thrwbl) {
6568
});
6669
refresh.run();
6770
}
68-
6971
settings.save();
7072
}
7173
}

0 commit comments

Comments
 (0)