step into single class: don't filter non-class based configurations

This commit is contained in:
Anna Kozlova
2015-06-17 12:40:30 +03:00
parent 761d9a124e
commit 3e16d41250
@@ -187,16 +187,16 @@ public class JavaExecutionUtil {
@Nullable
public static Location stepIntoSingleClass(@NotNull final Location location) {
PsiElement element = location.getPsiElement();
final VirtualFile virtualFile = PsiUtilCore.getVirtualFile(element);
final ProjectFileIndex fileIndex = ProjectRootManager.getInstance(location.getProject()).getFileIndex();
if (virtualFile == null || !fileIndex.isInSource(virtualFile)) {
return null;
}
if (!(element instanceof PsiClassOwner)) {
if (PsiTreeUtil.getParentOfType(element, PsiClass.class) != null) return location;
element = PsiTreeUtil.getParentOfType(element, PsiClassOwner.class);
if (element == null) return location;
}
final VirtualFile virtualFile = PsiUtilCore.getVirtualFile(element);
final ProjectFileIndex fileIndex = ProjectRootManager.getInstance(location.getProject()).getFileIndex();
if (virtualFile == null || !fileIndex.isInSource(virtualFile)) {
return null;
}
final PsiClassOwner psiFile = (PsiClassOwner)element;
final PsiClass[] classes = psiFile.getClasses();
if (classes.length != 1) return location;