summaryrefslogtreecommitdiff
path: root/platform/lang-impl/src/com/intellij/psi/impl/cache/impl/IndexTodoCacheManagerImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/lang-impl/src/com/intellij/psi/impl/cache/impl/IndexTodoCacheManagerImpl.java')
-rw-r--r--platform/lang-impl/src/com/intellij/psi/impl/cache/impl/IndexTodoCacheManagerImpl.java16
1 files changed, 14 insertions, 2 deletions
diff --git a/platform/lang-impl/src/com/intellij/psi/impl/cache/impl/IndexTodoCacheManagerImpl.java b/platform/lang-impl/src/com/intellij/psi/impl/cache/impl/IndexTodoCacheManagerImpl.java
index dc602d12626f..e28674fc52c1 100644
--- a/platform/lang-impl/src/com/intellij/psi/impl/cache/impl/IndexTodoCacheManagerImpl.java
+++ b/platform/lang-impl/src/com/intellij/psi/impl/cache/impl/IndexTodoCacheManagerImpl.java
@@ -5,6 +5,7 @@ package com.intellij.psi.impl.cache.impl;
import com.intellij.injected.editor.VirtualFileWindow;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.fileEditor.FileDocumentManager;
+import com.intellij.openapi.module.Module;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.VirtualFile;
@@ -52,14 +53,25 @@ public class IndexTodoCacheManagerImpl implements TodoCacheManager {
@Override
public boolean processFilesWithTodoItems(@NotNull Processor<? super PsiFile> processor) {
if (myProject.isDefault()) return true;
- GlobalSearchScope scope = GlobalSearchScope.allScope(myProject);
+ GlobalSearchScope scope = new GlobalSearchScope(myProject) {
+ @Override
+ public boolean isSearchInModuleContent(@NotNull Module module) { return true; }
+
+ @Override
+ public boolean isSearchInLibraries() { return false; }
+
+ @Override
+ public boolean contains(@NotNull VirtualFile file) {
+ return TodoIndexers.belongsToProject(myProject, file);
+ }
+ };
ConcurrentBitSet idSet = ConcurrentBitSet.create();
ManagingFS fs = ManagingFS.getInstance();
PsiManager psiManager = PsiManager.getInstance(myProject);
IntPredicate consumer = fileId -> {
VirtualFile file = fs.findFileById(fileId);
- if (file == null || !file.isValid() || !scope.contains(file) || !TodoIndexers.belongsToProject(myProject, file)) return true;
+ if (file == null || !file.isValid() || !scope.contains(file)) return true;
PsiFile psiFile = psiManager.findFile(file);
return psiFile == null || processor.process(psiFile);
};