diff --git a/platform/lang-impl/src/com/intellij/openapi/roots/ui/configuration/ContentEntryTreeEditor.java b/platform/lang-impl/src/com/intellij/openapi/roots/ui/configuration/ContentEntryTreeEditor.java
index 963e8aaf0a7a..6f88b3bd9d29 100644
--- a/platform/lang-impl/src/com/intellij/openapi/roots/ui/configuration/ContentEntryTreeEditor.java
+++ b/platform/lang-impl/src/com/intellij/openapi/roots/ui/configuration/ContentEntryTreeEditor.java
@@ -21,10 +21,7 @@ import com.intellij.ide.util.treeView.AbstractTreeBuilder;
import com.intellij.ide.util.treeView.AbstractTreeStructure;
import com.intellij.ide.util.treeView.NodeDescriptor;
import com.intellij.idea.ActionsBundle;
-import com.intellij.openapi.actionSystem.CustomShortcutSet;
-import com.intellij.openapi.actionSystem.DataProvider;
-import com.intellij.openapi.actionSystem.DefaultActionGroup;
-import com.intellij.openapi.actionSystem.Presentation;
+import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.actionSystem.ex.CustomComponentAction;
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
@@ -279,6 +276,10 @@ public class ContentEntryTreeEditor {
@Override
@Nullable
public Object getData(@NonNls final String dataId) {
+ if (CommonDataKeys.VIRTUAL_FILE_ARRAY.is(dataId)) {
+ return myFileSystemTree.getSelectedFiles();
+ }
+
if (FileSystemTree.DATA_KEY.is(dataId)) {
return myFileSystemTree;
}
diff --git a/platform/platform-api/src/com/intellij/openapi/fileChooser/FileSystemTree.java b/platform/platform-api/src/com/intellij/openapi/fileChooser/FileSystemTree.java
index 03a7fcc8cbf4..9547595ac02c 100644
--- a/platform/platform-api/src/com/intellij/openapi/fileChooser/FileSystemTree.java
+++ b/platform/platform-api/src/com/intellij/openapi/fileChooser/FileSystemTree.java
@@ -25,6 +25,11 @@ import javax.swing.*;
import java.util.List;
public interface FileSystemTree extends Disposable {
+ /**
+ * If you return a {@link FileSystemTree} instance for this key from a {@link com.intellij.openapi.actionSystem.DataContext}
+ * you must also return {@link #getSelectedFiles()} for {@link com.intellij.openapi.actionSystem.CommonDataKeys#VIRTUAL_FILE_ARRAY} key.
+ * Otherwise 'Delete' action on your component may delete the whole project.
+ */
DataKey DATA_KEY = DataKey.create("FileSystemTree");
JTree getTree();