diff --git a/Core/src/org/sleuthkit/autopsy/commonfilesearch/CaseDBCommonAttributeInstanceNode.java b/Core/src/org/sleuthkit/autopsy/commonfilesearch/CaseDBCommonAttributeInstanceNode.java
index 45ba05735e..ee5135b28a 100644
--- a/Core/src/org/sleuthkit/autopsy/commonfilesearch/CaseDBCommonAttributeInstanceNode.java
+++ b/Core/src/org/sleuthkit/autopsy/commonfilesearch/CaseDBCommonAttributeInstanceNode.java
@@ -22,6 +22,7 @@ import java.util.List;
import org.apache.commons.lang3.StringUtils;
import org.openide.nodes.Sheet;
import org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeInstance;
+import org.sleuthkit.autopsy.core.UserPreferences;
import org.sleuthkit.autopsy.datamodel.DisplayableItemNodeVisitor;
import org.sleuthkit.autopsy.datamodel.FileNode;
import org.sleuthkit.autopsy.datamodel.NodeProperty;
@@ -84,10 +85,12 @@ public class CaseDBCommonAttributeInstanceNode extends FileNode {
final String NO_DESCR = Bundle.CommonFilesSearchResultsViewerTable_noDescText();
sheetSet.put(new NodeProperty<>(Bundle.CommonFilesSearchResultsViewerTable_filesColLbl(), Bundle.CommonFilesSearchResultsViewerTable_filesColLbl(), NO_DESCR, this.getContent().getName()));
- CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
this.addScoreProperty(sheetSet, tags);
- this.addCommentProperty(sheetSet, tags, correlationAttribute);
- this.addCountProperty(sheetSet, correlationAttribute);
+ if (UserPreferences.hideExaminerNotifications() == false) {
+ CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
+ this.addCommentProperty(sheetSet, tags, correlationAttribute);
+ this.addCountProperty(sheetSet, correlationAttribute);
+ }
sheetSet.put(new NodeProperty<>(Bundle.CommonFilesSearchResultsViewerTable_pathColLbl(), Bundle.CommonFilesSearchResultsViewerTable_pathColLbl(), NO_DESCR, this.getContent().getParentPath()));
sheetSet.put(new NodeProperty<>(Bundle.CommonFilesSearchResultsViewerTable_hashsetHitsColLbl(), Bundle.CommonFilesSearchResultsViewerTable_hashsetHitsColLbl(), NO_DESCR, getHashSetHitsCsvList(this.getContent())));
sheetSet.put(new NodeProperty<>(Bundle.CommonFilesSearchResultsViewerTable_dataSourceColLbl(), Bundle.CommonFilesSearchResultsViewerTable_dataSourceColLbl(), NO_DESCR, this.getDataSource()));
diff --git a/Core/src/org/sleuthkit/autopsy/communications/RelationshipNode.java b/Core/src/org/sleuthkit/autopsy/communications/RelationshipNode.java
index 0b92830002..c6a470264d 100644
--- a/Core/src/org/sleuthkit/autopsy/communications/RelationshipNode.java
+++ b/Core/src/org/sleuthkit/autopsy/communications/RelationshipNode.java
@@ -24,6 +24,7 @@ import java.util.logging.Level;
import org.apache.commons.lang3.StringUtils;
import org.openide.nodes.Sheet;
import org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeInstance;
+import org.sleuthkit.autopsy.core.UserPreferences;
import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode;
import org.sleuthkit.autopsy.datamodel.NodeProperty;
@@ -68,10 +69,12 @@ final class RelationshipNode extends BlackboardArtifactNode {
}
sheetSet.put(new NodeProperty<>("Type", "Type", "Type", getDisplayName()));
- CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
addScoreProperty(sheetSet, tags);
- addCommentProperty(sheetSet, tags, correlationAttribute);
- addCountProperty(sheetSet, correlationAttribute);
+ if (UserPreferences.hideExaminerNotifications() == false) {
+ CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
+ addCommentProperty(sheetSet, tags, correlationAttribute);
+ addCountProperty(sheetSet, correlationAttribute);
+ }
final BlackboardArtifact artifact = getArtifact();
BlackboardArtifact.ARTIFACT_TYPE fromID = BlackboardArtifact.ARTIFACT_TYPE.fromID(getArtifact().getArtifactTypeID());
if (null != fromID) {
diff --git a/Core/src/org/sleuthkit/autopsy/contentviewers/MessageContentViewer.java b/Core/src/org/sleuthkit/autopsy/contentviewers/MessageContentViewer.java
index b109b12da0..1a8eb073de 100644
--- a/Core/src/org/sleuthkit/autopsy/contentviewers/MessageContentViewer.java
+++ b/Core/src/org/sleuthkit/autopsy/contentviewers/MessageContentViewer.java
@@ -37,6 +37,7 @@ import org.openide.nodes.Sheet;
import org.openide.util.NbBundle;
import org.openide.util.lookup.ServiceProvider;
import org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeInstance;
+import org.sleuthkit.autopsy.core.UserPreferences;
import org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer;
import org.sleuthkit.autopsy.corecomponents.DataResultPanel;
import org.sleuthkit.autopsy.corecomponents.TableFilterNode;
@@ -729,10 +730,12 @@ public class MessageContentViewer extends javax.swing.JPanel implements DataCont
AbstractFile file = getContent();
sheetSet.put(new NodeProperty<>("Name", "Name", "Name", file.getName()));
- CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
addScoreProperty(sheetSet, tags);
- addCommentProperty(sheetSet, tags, correlationAttribute);
- addCountProperty(sheetSet, correlationAttribute);
+ if (UserPreferences.hideExaminerNotifications() == false) {
+ CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
+ addCommentProperty(sheetSet, tags, correlationAttribute);
+ addCountProperty(sheetSet, correlationAttribute);
+ }
sheetSet.put(new NodeProperty<>("Size", "Size", "Size", file.getSize()));
sheetSet.put(new NodeProperty<>("Mime Type", "Mime Type", "Mime Type", StringUtils.defaultString(file.getMIMEType())));
sheetSet.put(new NodeProperty<>("Known", "Known", "Known", file.getKnown().getName()));
diff --git a/Core/src/org/sleuthkit/autopsy/core/UserPreferences.java b/Core/src/org/sleuthkit/autopsy/core/UserPreferences.java
index 48ce2c5731..69ec5e009e 100644
--- a/Core/src/org/sleuthkit/autopsy/core/UserPreferences.java
+++ b/Core/src/org/sleuthkit/autopsy/core/UserPreferences.java
@@ -71,6 +71,7 @@ public final class UserPreferences {
private static final int LOG_FILE_NUM_INT = 10;
public static final String GROUP_ITEMS_IN_TREE_BY_DATASOURCE = "GroupItemsInTreeByDataSource"; //NON-NLS
public static final String SHOW_ONLY_CURRENT_USER_TAGS = "ShowOnlyCurrentUserTags";
+ public static final String HIDE_EXAMINER_NOTIFICATIONS = "HideExaminerNotifications";
// Prevent instantiation.
private UserPreferences() {
@@ -220,6 +221,21 @@ public final class UserPreferences {
preferences.putBoolean(SHOW_ONLY_CURRENT_USER_TAGS, value);
}
+ /**
+ * //DLG:
+ */
+ public static boolean hideExaminerNotifications() {
+ return preferences.getBoolean(HIDE_EXAMINER_NOTIFICATIONS, false);
+ }
+
+
+ /**
+ * //DLG:
+ */
+ public static void setHideExaminerNotifications(boolean value) {
+ preferences.putBoolean(HIDE_EXAMINER_NOTIFICATIONS, value);
+ }
+
/**
* Reads persisted case database connection info.
*
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties b/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties
index 6191af9990..3623530baa 100644
--- a/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties
+++ b/Core/src/org/sleuthkit/autopsy/corecomponents/Bundle.properties
@@ -188,3 +188,4 @@ ViewPreferencesPanel.dataSourcesHideSlackCheckbox.text=Data Sources area (the di
ViewPreferencesPanel.viewsHideSlackCheckbox.text=Views area
ViewPreferencesPanel.currentSessionSettingsPanel.border.title=Current Session Settings
ViewPreferencesPanel.hideRejectedResultsCheckbox.text=Hide rejected results
+ViewPreferencesPanel.hideExaminerNotificationsCheckbox.text=Hide examiner notifications
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/ViewPreferencesPanel.form b/Core/src/org/sleuthkit/autopsy/corecomponents/ViewPreferencesPanel.form
index 0665023009..d0dd3c6e7c 100755
--- a/Core/src/org/sleuthkit/autopsy/corecomponents/ViewPreferencesPanel.form
+++ b/Core/src/org/sleuthkit/autopsy/corecomponents/ViewPreferencesPanel.form
@@ -54,12 +54,12 @@
-
+
-
+
@@ -82,52 +82,63 @@
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
-
+
@@ -140,7 +151,7 @@
-
+
@@ -156,7 +167,8 @@
-
+
+
@@ -286,6 +298,16 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/ViewPreferencesPanel.java b/Core/src/org/sleuthkit/autopsy/corecomponents/ViewPreferencesPanel.java
index 2864d62474..04d9e7d7f3 100755
--- a/Core/src/org/sleuthkit/autopsy/corecomponents/ViewPreferencesPanel.java
+++ b/Core/src/org/sleuthkit/autopsy/corecomponents/ViewPreferencesPanel.java
@@ -60,13 +60,16 @@ public class ViewPreferencesPanel extends JPanel implements OptionsPanel {
dataSourcesHideSlackCheckbox.setSelected(UserPreferences.hideSlackFilesInDataSourcesTree());
viewsHideSlackCheckbox.setSelected(UserPreferences.hideSlackFilesInViewsTree());
+
+ hideOtherUsersTagsCheckbox.setSelected(UserPreferences.showOnlyCurrentUserTags());
+ hideExaminerNotificationsCheckbox.setSelected(UserPreferences.hideExaminerNotifications());
+
// Current Case Settings
boolean caseIsOpen = Case.isCaseOpen();
currentCaseSettingsPanel.setEnabled(caseIsOpen);
groupByDataSourceCheckbox.setEnabled(caseIsOpen);
- hideOtherUsersTagsCheckbox.setSelected(UserPreferences.showOnlyCurrentUserTags());
groupByDataSourceCheckbox.setSelected(Objects.equals(CasePreferences.getGroupItemsInTreeByDataSource(), true));
// Current Session Settings
@@ -82,6 +85,7 @@ public class ViewPreferencesPanel extends JPanel implements OptionsPanel {
UserPreferences.setHideSlackFilesInDataSourcesTree(dataSourcesHideSlackCheckbox.isSelected());
UserPreferences.setHideSlackFilesInViewsTree(viewsHideSlackCheckbox.isSelected());
UserPreferences.setShowOnlyCurrentUserTags(hideOtherUsersTagsCheckbox.isSelected());
+ UserPreferences.setHideExaminerNotifications(hideExaminerNotificationsCheckbox.isSelected());
storeGroupItemsInTreeByDataSource();
@@ -127,6 +131,7 @@ public class ViewPreferencesPanel extends JPanel implements OptionsPanel {
useLocalTimeRadioButton = new javax.swing.JRadioButton();
useGMTTimeRadioButton = new javax.swing.JRadioButton();
hideOtherUsersTagsCheckbox = new javax.swing.JCheckBox();
+ hideExaminerNotificationsCheckbox = new javax.swing.JCheckBox();
currentCaseSettingsPanel = new javax.swing.JPanel();
groupByDataSourceCheckbox = new javax.swing.JCheckBox();
currentSessionSettingsPanel = new javax.swing.JPanel();
@@ -209,6 +214,13 @@ public class ViewPreferencesPanel extends JPanel implements OptionsPanel {
}
});
+ org.openide.awt.Mnemonics.setLocalizedText(hideExaminerNotificationsCheckbox, org.openide.util.NbBundle.getMessage(ViewPreferencesPanel.class, "ViewPreferencesPanel.hideExaminerNotificationsCheckbox.text")); // NOI18N
+ hideExaminerNotificationsCheckbox.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ hideExaminerNotificationsCheckboxActionPerformed(evt);
+ }
+ });
+
javax.swing.GroupLayout globalSettingsPanelLayout = new javax.swing.GroupLayout(globalSettingsPanel);
globalSettingsPanel.setLayout(globalSettingsPanelLayout);
globalSettingsPanelLayout.setHorizontalGroup(
@@ -216,38 +228,45 @@ public class ViewPreferencesPanel extends JPanel implements OptionsPanel {
.addGroup(globalSettingsPanelLayout.createSequentialGroup()
.addContainerGap()
.addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(displayTimeLabel)
.addGroup(globalSettingsPanelLayout.createSequentialGroup()
- .addGap(10, 10, 10)
+ .addComponent(hideExaminerNotificationsCheckbox)
+ .addGap(0, 0, Short.MAX_VALUE))
+ .addGroup(globalSettingsPanelLayout.createSequentialGroup()
+ .addComponent(hideOtherUsersTagsCheckbox)
+ .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .addGroup(globalSettingsPanelLayout.createSequentialGroup()
.addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(keepCurrentViewerRadioButton)
- .addComponent(useBestViewerRadioButton)
- .addComponent(useGMTTimeRadioButton)
- .addComponent(useLocalTimeRadioButton)))
- .addComponent(selectFileLabel))
- .addGap(18, 18, 18)
- .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(hideOtherUsersTagsCheckbox)
- .addComponent(hideKnownFilesLabel)
- .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+ .addComponent(hideKnownFilesLabel)
+ .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+ .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(globalSettingsPanelLayout.createSequentialGroup()
+ .addGap(10, 10, 10)
+ .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(dataSourcesHideSlackCheckbox)
+ .addComponent(viewsHideSlackCheckbox)))
+ .addComponent(hideSlackFilesLabel))
+ .addGroup(globalSettingsPanelLayout.createSequentialGroup()
+ .addGap(10, 10, 10)
+ .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(dataSourcesHideKnownCheckbox)
+ .addComponent(viewsHideKnownCheckbox)))))
+ .addGap(27, 27, 27)
.addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(displayTimeLabel)
+ .addComponent(selectFileLabel)
.addGroup(globalSettingsPanelLayout.createSequentialGroup()
.addGap(10, 10, 10)
.addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(dataSourcesHideSlackCheckbox)
- .addComponent(viewsHideSlackCheckbox)))
- .addComponent(hideSlackFilesLabel))
- .addGroup(globalSettingsPanelLayout.createSequentialGroup()
- .addGap(10, 10, 10)
- .addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(dataSourcesHideKnownCheckbox)
- .addComponent(viewsHideKnownCheckbox)))))
- .addContainerGap(29, Short.MAX_VALUE))
+ .addComponent(keepCurrentViewerRadioButton)
+ .addComponent(useBestViewerRadioButton)
+ .addComponent(useGMTTimeRadioButton)
+ .addComponent(useLocalTimeRadioButton))))
+ .addGap(20, 20, 20))))
);
globalSettingsPanelLayout.setVerticalGroup(
globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(globalSettingsPanelLayout.createSequentialGroup()
- .addContainerGap()
+ .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(globalSettingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(globalSettingsPanelLayout.createSequentialGroup()
.addComponent(hideKnownFilesLabel)
@@ -275,7 +294,8 @@ public class ViewPreferencesPanel extends JPanel implements OptionsPanel {
.addComponent(useGMTTimeRadioButton)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(hideOtherUsersTagsCheckbox)
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(hideExaminerNotificationsCheckbox))
);
currentCaseSettingsPanel.setBorder(javax.swing.BorderFactory.createTitledBorder(org.openide.util.NbBundle.getMessage(ViewPreferencesPanel.class, "ViewPreferencesPanel.currentCaseSettingsPanel.border.title"))); // NOI18N
@@ -343,12 +363,12 @@ public class ViewPreferencesPanel extends JPanel implements OptionsPanel {
viewPreferencesPanelLayout.setVerticalGroup(
viewPreferencesPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(viewPreferencesPanelLayout.createSequentialGroup()
- .addComponent(globalSettingsPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 197, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addComponent(globalSettingsPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(currentCaseSettingsPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(currentSessionSettingsPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .addContainerGap(13, Short.MAX_VALUE))
);
viewPreferencesScrollPane.setViewportView(viewPreferencesPanel);
@@ -461,6 +481,14 @@ public class ViewPreferencesPanel extends JPanel implements OptionsPanel {
}
}//GEN-LAST:event_hideRejectedResultsCheckboxActionPerformed
+ private void hideExaminerNotificationsCheckboxActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_hideExaminerNotificationsCheckboxActionPerformed
+ if (immediateUpdates) {
+ UserPreferences.setHideExaminerNotifications(hideExaminerNotificationsCheckbox.isSelected());
+ } else {
+ firePropertyChange(OptionsPanelController.PROP_CHANGED, null, null);
+ }
+ }//GEN-LAST:event_hideExaminerNotificationsCheckboxActionPerformed
+
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JPanel currentCaseSettingsPanel;
@@ -470,6 +498,7 @@ public class ViewPreferencesPanel extends JPanel implements OptionsPanel {
private javax.swing.JLabel displayTimeLabel;
private javax.swing.JPanel globalSettingsPanel;
private javax.swing.JCheckBox groupByDataSourceCheckbox;
+ private javax.swing.JCheckBox hideExaminerNotificationsCheckbox;
private javax.swing.JLabel hideKnownFilesLabel;
private javax.swing.JCheckBox hideOtherUsersTagsCheckbox;
private javax.swing.JCheckBox hideRejectedResultsCheckbox;
diff --git a/Core/src/org/sleuthkit/autopsy/datamodel/AbstractFsContentNode.java b/Core/src/org/sleuthkit/autopsy/datamodel/AbstractFsContentNode.java
index 02dd3c1d28..bc42c4e80c 100644
--- a/Core/src/org/sleuthkit/autopsy/datamodel/AbstractFsContentNode.java
+++ b/Core/src/org/sleuthkit/autopsy/datamodel/AbstractFsContentNode.java
@@ -24,6 +24,7 @@ import java.util.Map;
import org.openide.nodes.Sheet;
import org.openide.util.NbBundle;
import org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeInstance;
+import org.sleuthkit.autopsy.core.UserPreferences;
import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.datamodel.AbstractFile;
import org.sleuthkit.datamodel.ContentTag;
@@ -82,12 +83,14 @@ public abstract class AbstractFsContentNode extends Abst
AbstractFilePropertyType.NAME.toString(),
NO_DESCR,
getName()));
- //add the cr status property before the propertyMap to ensure it is early in column order
+ //add the status property before the propertyMap to ensure it is early in column order
addScoreProperty(sheetSet, tags);
- //add the comment property before the propertyMap to ensure it is early in column order
- CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
- addCommentProperty(sheetSet, tags, correlationAttribute);
- addCountProperty(sheetSet, correlationAttribute);
+ if (UserPreferences.hideExaminerNotifications() == false) {
+ //add the comment property before the propertyMap to ensure it is early in column order
+ CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
+ addCommentProperty(sheetSet, tags, correlationAttribute);
+ addCountProperty(sheetSet, correlationAttribute);
+ }
for (AbstractFilePropertyType propType : AbstractFilePropertyType.values()) {
final String propString = propType.toString();
sheetSet.put(new NodeProperty<>(propString, propString, NO_DESCR, map.get(propString)));
diff --git a/Core/src/org/sleuthkit/autopsy/datamodel/BlackboardArtifactNode.java b/Core/src/org/sleuthkit/autopsy/datamodel/BlackboardArtifactNode.java
index 4178d2fafe..b816d7670a 100644
--- a/Core/src/org/sleuthkit/autopsy/datamodel/BlackboardArtifactNode.java
+++ b/Core/src/org/sleuthkit/autopsy/datamodel/BlackboardArtifactNode.java
@@ -55,6 +55,7 @@ import org.sleuthkit.autopsy.centralrepository.datamodel.EamArtifactUtil;
import org.sleuthkit.autopsy.centralrepository.datamodel.EamDb;
import org.sleuthkit.autopsy.centralrepository.datamodel.EamDbException;
import org.sleuthkit.autopsy.centralrepository.datamodel.EamDbUtil;
+import org.sleuthkit.autopsy.core.UserPreferences;
import org.sleuthkit.autopsy.corecomponents.DataResultViewerTable.Score;
import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.coreutils.MessageNotifyUtil;
@@ -350,10 +351,12 @@ public class BlackboardArtifactNode extends AbstractContentNode {
NbBundle.getMessage(this.getClass(), "LayoutFileNode.createSheet.name.displayName"),
NbBundle.getMessage(this.getClass(), "LayoutFileNode.createSheet.name.desc"),
getName()));
- CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
addScoreProperty(sheetSet, tags);
- addCommentProperty(sheetSet, tags, correlationAttribute);
- addCountProperty(sheetSet, correlationAttribute);
+ if (UserPreferences.hideExaminerNotifications() == false) {
+ CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
+ addCommentProperty(sheetSet, tags, correlationAttribute);
+ addCountProperty(sheetSet, correlationAttribute);
+ }
final String NO_DESCR = NbBundle.getMessage(this.getClass(), "LayoutFileNode.createSheet.noDescr.text");
for (Map.Entry entry : map.entrySet()) {
sheetSet.put(new NodeProperty<>(entry.getKey(), entry.getKey(), NO_DESCR, entry.getValue()));
diff --git a/Core/src/org/sleuthkit/autopsy/datamodel/LocalDirectoryNode.java b/Core/src/org/sleuthkit/autopsy/datamodel/LocalDirectoryNode.java
index f6f3de7680..9488202b92 100644
--- a/Core/src/org/sleuthkit/autopsy/datamodel/LocalDirectoryNode.java
+++ b/Core/src/org/sleuthkit/autopsy/datamodel/LocalDirectoryNode.java
@@ -24,6 +24,7 @@ import java.util.Map;
import org.openide.nodes.Sheet;
import org.openide.util.NbBundle;
import org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeInstance;
+import org.sleuthkit.autopsy.core.UserPreferences;
import org.sleuthkit.datamodel.ContentTag;
import org.sleuthkit.datamodel.LocalDirectory;
@@ -63,10 +64,12 @@ public class LocalDirectoryNode extends SpecialDirectoryNode {
Bundle.LocalDirectoryNode_createSheet_name_displayName(),
Bundle.LocalDirectoryNode_createSheet_name_desc(),
getName()));
- CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
addScoreProperty(sheetSet, tags);
- addCommentProperty(sheetSet, tags, correlationAttribute);
- addCountProperty(sheetSet, correlationAttribute);
+ if (UserPreferences.hideExaminerNotifications() == false) {
+ CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
+ addCommentProperty(sheetSet, tags, correlationAttribute);
+ addCountProperty(sheetSet, correlationAttribute);
+ }
// At present, a LocalDirectory will never be a datasource - the top level of a logical
// file set is a VirtualDirectory
Map map = new LinkedHashMap<>();
diff --git a/Core/src/org/sleuthkit/autopsy/datamodel/LocalFileNode.java b/Core/src/org/sleuthkit/autopsy/datamodel/LocalFileNode.java
index a9c09ee1d7..90fe295825 100644
--- a/Core/src/org/sleuthkit/autopsy/datamodel/LocalFileNode.java
+++ b/Core/src/org/sleuthkit/autopsy/datamodel/LocalFileNode.java
@@ -33,6 +33,7 @@ import org.openide.util.Utilities;
import org.sleuthkit.autopsy.actions.AddContentTagAction;
import org.sleuthkit.autopsy.actions.DeleteFileContentTagAction;
import org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeInstance;
+import org.sleuthkit.autopsy.core.UserPreferences;
import org.sleuthkit.autopsy.coreutils.ContextMenuExtensionPoint;
import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.directorytree.ExternalViewerAction;
@@ -82,10 +83,12 @@ public class LocalFileNode extends AbstractAbstractFileNode {
NbBundle.getMessage(this.getClass(), "LocalFileNode.createSheet.name.displayName"),
NbBundle.getMessage(this.getClass(), "LocalFileNode.createSheet.name.desc"),
getName()));
- CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
addScoreProperty(sheetSet, tags);
- addCommentProperty(sheetSet, tags, correlationAttribute);
- addCountProperty(sheetSet, correlationAttribute);
+ if (UserPreferences.hideExaminerNotifications() == false) {
+ CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
+ addCommentProperty(sheetSet, tags, correlationAttribute);
+ addCountProperty(sheetSet, correlationAttribute);
+ }
final String NO_DESCR = NbBundle.getMessage(this.getClass(), "LocalFileNode.createSheet.noDescr.text");
for (Map.Entry entry : map.entrySet()) {
sheetSet.put(new NodeProperty<>(entry.getKey(), entry.getKey(), NO_DESCR, entry.getValue()));
diff --git a/Core/src/org/sleuthkit/autopsy/datamodel/VirtualDirectoryNode.java b/Core/src/org/sleuthkit/autopsy/datamodel/VirtualDirectoryNode.java
index 02f382e6ad..2244ccd90d 100644
--- a/Core/src/org/sleuthkit/autopsy/datamodel/VirtualDirectoryNode.java
+++ b/Core/src/org/sleuthkit/autopsy/datamodel/VirtualDirectoryNode.java
@@ -29,6 +29,7 @@ import org.openide.util.NbBundle;
import org.sleuthkit.autopsy.casemodule.Case;
import org.sleuthkit.autopsy.casemodule.NoCurrentCaseException;
import org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeInstance;
+import org.sleuthkit.autopsy.core.UserPreferences;
import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.datamodel.ContentTag;
import org.sleuthkit.datamodel.SleuthkitCase;
@@ -90,10 +91,12 @@ public class VirtualDirectoryNode extends SpecialDirectoryNode {
NbBundle.getMessage(this.getClass(), "VirtualDirectoryNode.createSheet.name.desc"),
getName()));
if (!this.content.isDataSource()) {
- CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
addScoreProperty(sheetSet, tags);
- addCommentProperty(sheetSet, tags, correlationAttribute);
- addCountProperty(sheetSet, correlationAttribute);
+ if (UserPreferences.hideExaminerNotifications() == false) {
+ CorrelationAttributeInstance correlationAttribute = getCorrelationAttributeInstance();
+ addCommentProperty(sheetSet, tags, correlationAttribute);
+ addCountProperty(sheetSet, correlationAttribute);
+ }
Map map = new LinkedHashMap<>();
fillPropertyMap(map, getContent());
diff --git a/Core/src/org/sleuthkit/autopsy/directorytree/DirectoryTreeTopComponent.java b/Core/src/org/sleuthkit/autopsy/directorytree/DirectoryTreeTopComponent.java
index 9c577cba59..fe453eea9d 100644
--- a/Core/src/org/sleuthkit/autopsy/directorytree/DirectoryTreeTopComponent.java
+++ b/Core/src/org/sleuthkit/autopsy/directorytree/DirectoryTreeTopComponent.java
@@ -175,6 +175,7 @@ public final class DirectoryTreeTopComponent extends TopComponent implements Dat
switch (evt.getKey()) {
case UserPreferences.HIDE_KNOWN_FILES_IN_DATA_SRCS_TREE:
case UserPreferences.HIDE_SLACK_FILES_IN_DATA_SRCS_TREE:
+ case UserPreferences.HIDE_EXAMINER_NOTIFICATIONS:
refreshContentTreeSafe();
break;
case UserPreferences.SHOW_ONLY_CURRENT_USER_TAGS: