Fixed a bug that was sometimes causing UI hang when saving settings

This commit is contained in:
Eugene Livis 2016-09-15 14:45:53 -04:00
parent e635afd24e
commit adc9d13de4

View File

@ -36,6 +36,7 @@ import java.awt.Dimension;
import java.nio.file.Paths; import java.nio.file.Paths;
import org.openide.util.ImageUtilities; import org.openide.util.ImageUtilities;
import javax.swing.JScrollPane; import javax.swing.JScrollPane;
import javax.swing.SwingUtilities;
import org.sleuthkit.autopsy.coreutils.FileUtil; import org.sleuthkit.autopsy.coreutils.FileUtil;
import org.openide.windows.WindowManager; import org.openide.windows.WindowManager;
import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.coreutils.Logger;
@ -220,10 +221,12 @@ public class AutoIngestSettingsPanel extends javax.swing.JPanel {
needsSaving = true; needsSaving = true;
} }
if (needsSaving) { if (needsSaving) {
JOptionPane.showMessageDialog(null, SwingUtilities.invokeLater(() -> {
NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.MustRestart"), JOptionPane.showMessageDialog(null,
NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.restartRequiredLabel.text"), NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.MustRestart"),
JOptionPane.WARNING_MESSAGE); NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.restartRequiredLabel.text"),
JOptionPane.WARNING_MESSAGE);
});
} }
AutoIngestUserPreferences.setMode(AutoIngestUserPreferences.SelectedMode.AUTOMATED); AutoIngestUserPreferences.setMode(AutoIngestUserPreferences.SelectedMode.AUTOMATED);
@ -240,10 +243,12 @@ public class AutoIngestSettingsPanel extends javax.swing.JPanel {
} else if (jRadioButtonReview.isSelected()) { } else if (jRadioButtonReview.isSelected()) {
String thePath = AutoIngestUserPreferences.getAutoModeResultsFolder(); String thePath = AutoIngestUserPreferences.getAutoModeResultsFolder();
if (thePath != null && 0 != outputPathTextField.getText().compareTo(thePath)) { if (thePath != null && 0 != outputPathTextField.getText().compareTo(thePath)) {
JOptionPane.showMessageDialog(null, SwingUtilities.invokeLater(() -> {
NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.MustRestart"), JOptionPane.showMessageDialog(null,
NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.restartRequiredLabel.text"), NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.MustRestart"),
JOptionPane.WARNING_MESSAGE); NbBundle.getMessage(AutoIngestSettingsPanel.class, "AutoIngestSettingsPanel.restartRequiredLabel.text"),
JOptionPane.WARNING_MESSAGE);
});
} }
AutoIngestUserPreferences.setMode(AutoIngestUserPreferences.SelectedMode.REVIEW); AutoIngestUserPreferences.setMode(AutoIngestUserPreferences.SelectedMode.REVIEW);