diff --git a/Core/src/org/sleuthkit/autopsy/discovery/Bundle.properties-MERGED b/Core/src/org/sleuthkit/autopsy/discovery/Bundle.properties-MERGED index df1b6b8fd2..b687a1d9fb 100644 --- a/Core/src/org/sleuthkit/autopsy/discovery/Bundle.properties-MERGED +++ b/Core/src/org/sleuthkit/autopsy/discovery/Bundle.properties-MERGED @@ -191,7 +191,7 @@ GroupsListPanel.noResults.title.text=No results found ImageThumbnailPanel.isDeleted.text=All instances of file are deleted. # {0} - otherInstanceCount ImageThumbnailPanel.nameLabel.more.text=\ and {0} more -OpenDiscoveryAction.resultsIncomplete.text=Results may be incomplete +OpenDiscoveryAction.resultsIncomplete.text=Discovery results may be incomplete ResultFile.score.interestingResult.description=At least one instance of the file has an interesting result associated with it. ResultFile.score.notableFile.description=At least one instance of the file was recognized as notable. ResultFile.score.notableTaggedFile.description=At least one instance of the file is tagged with a notable tag. diff --git a/Core/src/org/sleuthkit/autopsy/discovery/DiscoveryUiUtils.java b/Core/src/org/sleuthkit/autopsy/discovery/DiscoveryUiUtils.java index 3890751dc7..55392f54f2 100644 --- a/Core/src/org/sleuthkit/autopsy/discovery/DiscoveryUiUtils.java +++ b/Core/src/org/sleuthkit/autopsy/discovery/DiscoveryUiUtils.java @@ -19,6 +19,7 @@ package org.sleuthkit.autopsy.discovery; import java.awt.Component; +import java.awt.Dimension; import java.awt.Point; import java.util.ArrayList; import java.util.Collections; @@ -29,6 +30,8 @@ import java.util.logging.Level; import javax.swing.ImageIcon; import javax.swing.JComponent; import javax.swing.JOptionPane; +import javax.swing.JScrollPane; +import javax.swing.JTextPane; import org.openide.util.ImageUtilities; import org.openide.util.NbBundle; import org.sleuthkit.autopsy.casemodule.Case; @@ -224,7 +227,16 @@ final class DiscoveryUiUtils { message += dsmodulesWrapper.getMessage(); } if (!message.isEmpty()) { - JOptionPane.showMessageDialog(dialog, message, Bundle.OpenDiscoveryAction_resultsIncomplete_text(), JOptionPane.INFORMATION_MESSAGE); + JScrollPane messageScrollPane = new JScrollPane(); + JTextPane messageTextPane = new JTextPane(); + messageTextPane.setText(message); + messageTextPane.setVisible(true); + messageTextPane.setEditable(false); + messageTextPane.setCaretPosition(0); + messageScrollPane.setMaximumSize(new Dimension(600, 100)); + messageScrollPane.setPreferredSize(new Dimension(600, 100)); + messageScrollPane.setViewportView(messageTextPane); + JOptionPane.showMessageDialog(dialog, messageScrollPane, Bundle.OpenDiscoveryAction_resultsIncomplete_text(), JOptionPane.PLAIN_MESSAGE); } } catch (NoCurrentCaseException | TskCoreException ex) { logger.log(Level.WARNING, "Exception while determining which modules have been run for Discovery", ex); diff --git a/Core/src/org/sleuthkit/autopsy/discovery/OpenDiscoveryAction.java b/Core/src/org/sleuthkit/autopsy/discovery/OpenDiscoveryAction.java index 9ef7d5dfe6..04530f8ad2 100644 --- a/Core/src/org/sleuthkit/autopsy/discovery/OpenDiscoveryAction.java +++ b/Core/src/org/sleuthkit/autopsy/discovery/OpenDiscoveryAction.java @@ -21,6 +21,7 @@ package org.sleuthkit.autopsy.discovery; import java.awt.Component; import javax.swing.ImageIcon; import javax.swing.JButton; +import javax.swing.SwingUtilities; import org.openide.awt.ActionID; import org.openide.awt.ActionReference; import org.openide.awt.ActionReferences; @@ -61,14 +62,16 @@ public final class OpenDiscoveryAction extends CallableSystemAction implements P return Case.isCaseOpen(); } - @NbBundle.Messages({"OpenDiscoveryAction.resultsIncomplete.text=Results may be incomplete"}) + @NbBundle.Messages({"OpenDiscoveryAction.resultsIncomplete.text=Discovery results may be incomplete"}) @Override public void performAction() { - final DiscoveryDialog discDialog = DiscoveryDialog.getDiscoveryDialogInstance(); - discDialog.cancelSearch(); - discDialog.setVisible(true); - DiscoveryUiUtils.displayErrorMessage(discDialog); + SwingUtilities.invokeLater(() -> { + final DiscoveryDialog discDialog = DiscoveryDialog.getDiscoveryDialogInstance(); + discDialog.cancelSearch(); + DiscoveryUiUtils.displayErrorMessage(discDialog); + discDialog.setVisible(true); + }); } /**