allow to drop into excluded directory (IDEA-170100)

This commit is contained in:
Anna.Kozlova
2017-03-23 15:49:44 +01:00
parent 52d1f554db
commit beda8bb56b
@@ -21,6 +21,8 @@ import com.intellij.openapi.actionSystem.LangDataKeys;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.roots.ProjectRootManager;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.*;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.psi.util.PsiUtilCore;
@@ -61,7 +63,9 @@ public class MoveFilesOrDirectoriesHandler extends MoveHandlerDelegate {
public static boolean isValidTarget(PsiElement psiElement) {
if (!(psiElement instanceof PsiDirectory || psiElement instanceof PsiDirectoryContainer)) return false;
return psiElement.getManager().isInProject(psiElement) || ScratchFileService.isInScratchRoot(PsiUtilCore.getVirtualFile(psiElement));
if (psiElement.getManager().isInProject(psiElement)) return true;
VirtualFile virtualFile = PsiUtilCore.getVirtualFile(psiElement);
return ScratchFileService.isInScratchRoot(virtualFile) || virtualFile != null && ProjectRootManager.getInstance(psiElement.getProject()).getFileIndex().isExcluded(virtualFile);
}
public void doMove(final PsiElement[] elements, final PsiElement targetContainer) {