mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
index scratch roots
This commit is contained in:
@@ -52,6 +52,7 @@ import com.intellij.psi.util.PsiUtilCore;
|
||||
import com.intellij.util.PairConsumer;
|
||||
import com.intellij.util.PathUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.indexing.IndexableSetContributor;
|
||||
import com.intellij.util.messages.MessageBus;
|
||||
import org.jdom.Element;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -59,9 +60,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.io.IOException;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.*;
|
||||
|
||||
|
||||
@State(name = "ScratchFileService", storages = @Storage("scratches.xml"))
|
||||
@@ -314,4 +313,26 @@ public class ScratchFileServiceImpl extends ScratchFileService implements Persis
|
||||
private static Language getLanguageByFileName(@Nullable VirtualFile file) {
|
||||
return file == null ? null : LanguageUtil.getFileTypeLanguage(FileTypeManager.getInstance().getFileTypeByFileName(file.getName()));
|
||||
}
|
||||
|
||||
public static class IndexSetContributor extends IndexableSetContributor {
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Set<VirtualFile> getAdditionalRootsToIndex() {
|
||||
ScratchFileService instance = ScratchFileService.getInstance();
|
||||
LocalFileSystem fileSystem = LocalFileSystem.getInstance();
|
||||
HashSet<VirtualFile> result = ContainerUtil.newHashSet();
|
||||
for (RootType rootType : RootType.getAllRootIds()) {
|
||||
if (rootType.isHidden()) continue;
|
||||
ContainerUtil.addIfNotNull(result, fileSystem.findFileByPath(instance.getRootPath(rootType)));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Set<VirtualFile> getAdditionalProjectRootsToIndex(@NotNull Project project) {
|
||||
return Collections.emptySet();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -359,6 +359,7 @@
|
||||
<fileIconProvider implementation="com.intellij.ide.scratch.ScratchFileServiceImpl$FilePresentation"/>
|
||||
<editorTabTitleProvider implementation="com.intellij.ide.scratch.ScratchFileServiceImpl$FilePresentation"/>
|
||||
<syntaxHighlighter factoryClass="com.intellij.ide.scratch.ScratchFileServiceImpl$Highlighter" order="first"/>
|
||||
<indexedRootsProvider implementation="com.intellij.ide.scratch.ScratchFileServiceImpl$IndexSetContributor"/>
|
||||
|
||||
<scratch.rootType implementation="com.intellij.ide.scratch.ScratchRootType" />
|
||||
<scratch.rootType implementation="com.intellij.execution.console.HistoryRootType"/>
|
||||
|
||||
Reference in New Issue
Block a user