From 6a5e73facbd38a14c8831b330649a72290520c52 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Fri, 20 Nov 2009 14:44:08 +0300 Subject: [PATCH] getUseScope() should include element's file if it's not in Project Scope --- .../src/com/intellij/psi/impl/file/impl/FileManagerImpl.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/psi/impl/file/impl/FileManagerImpl.java b/platform/lang-impl/src/com/intellij/psi/impl/file/impl/FileManagerImpl.java index 170a9cdeb7..0ca2cc069c 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/file/impl/FileManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/file/impl/FileManagerImpl.java @@ -402,18 +402,19 @@ public class FileManagerImpl implements FileManager { @NotNull public GlobalSearchScope getUseScope(@NotNull PsiElement element) { VirtualFile vFile; + final GlobalSearchScope allScope = GlobalSearchScope.allScope(myManager.getProject()); if (element instanceof PsiDirectory) { vFile = ((PsiDirectory)element).getVirtualFile(); } else { final PsiFile containingFile = element.getContainingFile(); - if (containingFile == null) return GlobalSearchScope.allScope(myManager.getProject()); + if (containingFile == null) return allScope; final VirtualFile virtualFile = containingFile.getVirtualFile(); - if (virtualFile == null) return GlobalSearchScope.allScope(myManager.getProject()); + if (virtualFile == null) return allScope; vFile = virtualFile.getParent(); } - if (vFile == null) return GlobalSearchScope.allScope(myManager.getProject()); + if (vFile == null) return allScope; ProjectFileIndex projectFileIndex = myProjectRootManager.getFileIndex(); Module module = projectFileIndex.getModuleForFile(vFile); if (module != null) { @@ -423,7 +424,8 @@ public class FileManagerImpl implements FileManager { : GlobalSearchScope.moduleWithDependentsScope(module); } else { - return GlobalSearchScope.allScope(myManager.getProject()); + final PsiFile f = element.getContainingFile(); + return allScope.contains(f.getVirtualFile()) ? allScope : GlobalSearchScope.fileScope(f).uniteWith(allScope); } } -- 2.11.4.GIT