18 lines
838 B
Kotlin
18 lines
838 B
Kotlin
package dev.hgh.jai.settings
|
|
|
|
import com.intellij.openapi.project.Project
|
|
import com.intellij.openapi.roots.AdditionalLibraryRootsProvider
|
|
import com.intellij.openapi.roots.SyntheticLibrary
|
|
import com.intellij.openapi.vfs.VirtualFile
|
|
|
|
/** Makes configured external Jai directories part of IntelliJ's indexed library scope. */
|
|
class JaiAdditionalLibraryRootsProvider : AdditionalLibraryRootsProvider() {
|
|
override fun getAdditionalProjectLibraries(project: Project): Collection<SyntheticLibrary> {
|
|
val roots = JaiProjectSettings.getInstance(project).configuredRoots()
|
|
if (roots.isEmpty()) return emptyList()
|
|
return listOf(SyntheticLibrary.newImmutableLibrary(roots))
|
|
}
|
|
|
|
override fun getRootsToWatch(project: Project): Collection<VirtualFile> = JaiProjectSettings.getInstance(project).configuredRoots()
|
|
}
|