mirror of
https://github.com/elisspace/autopsy.git
synced 2026-10-05 16:56:16 +00:00
defer selection to ensure the new node is set as rootcontext first
This commit is contained in:
@@ -36,7 +36,6 @@ import org.openide.nodes.NodeEvent;
|
||||
import org.openide.nodes.NodeListener;
|
||||
import org.openide.nodes.NodeMemberEvent;
|
||||
import org.openide.nodes.NodeReorderEvent;
|
||||
import org.openide.util.Exceptions;
|
||||
import org.openide.util.Lookup;
|
||||
import org.openide.util.NbBundle;
|
||||
import org.sleuthkit.autopsy.casemodule.Case;
|
||||
@@ -369,7 +368,7 @@ public class DataResultPanel extends javax.swing.JPanel implements DataResult, C
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setNode(Node selectedNode) {
|
||||
public void setNode(final Node selectedNode) {
|
||||
if (this.rootNode != null) {
|
||||
this.rootNode.removeNodeListener(dummyNodeListener);
|
||||
}
|
||||
@@ -392,12 +391,19 @@ public class DataResultPanel extends javax.swing.JPanel implements DataResult, C
|
||||
if (selectedNode != null) {
|
||||
int childrenCount = selectedNode.getChildren().getNodesCount();
|
||||
this.numberMatchLabel.setText(Integer.toString(childrenCount));
|
||||
|
||||
//if there is only one child, select it to be displayed in the content viewer
|
||||
if (childrenCount == 1) {
|
||||
try {
|
||||
explorerManager.setSelectedNodes(selectedNode.getChildren().getNodes());
|
||||
} catch (PropertyVetoException ex) {
|
||||
Exceptions.printStackTrace(ex);
|
||||
}
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
explorerManager.setSelectedNodes(selectedNode.getChildren().getNodes());
|
||||
} catch (PropertyVetoException ex) {
|
||||
logger.log(Level.INFO, "node selection vetoed");
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
this.numberMatchLabel.setVisible(true);
|
||||
|
||||
Reference in New Issue
Block a user