Reset library caches on file types change and dumb mode enter/exit
Ref: https://github.com/JetBrains/intellij-community/commit/50df476199043bde25b8220c8a8ff2f3545bd325
This commit is contained in:
+24
@@ -19,6 +19,10 @@ package org.jetbrains.kotlin.idea.caches.resolve
|
|||||||
import com.intellij.ide.highlighter.ArchiveFileType
|
import com.intellij.ide.highlighter.ArchiveFileType
|
||||||
import com.intellij.openapi.application.ApplicationManager
|
import com.intellij.openapi.application.ApplicationManager
|
||||||
import com.intellij.openapi.components.ServiceManager
|
import com.intellij.openapi.components.ServiceManager
|
||||||
|
import com.intellij.openapi.fileTypes.FileTypeEvent
|
||||||
|
import com.intellij.openapi.fileTypes.FileTypeListener
|
||||||
|
import com.intellij.openapi.fileTypes.FileTypeManager
|
||||||
|
import com.intellij.openapi.project.DumbService
|
||||||
import com.intellij.openapi.project.Project
|
import com.intellij.openapi.project.Project
|
||||||
import com.intellij.openapi.roots.ProjectFileIndex
|
import com.intellij.openapi.roots.ProjectFileIndex
|
||||||
import com.intellij.openapi.util.SimpleModificationTracker
|
import com.intellij.openapi.util.SimpleModificationTracker
|
||||||
@@ -60,6 +64,26 @@ class LibraryModificationTracker(project: Project) : SimpleModificationTracker()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
connection.subscribe(DumbService.DUMB_MODE, object : DumbService.DumbModeListener {
|
||||||
|
override fun enteredDumbMode() {
|
||||||
|
incModificationCount()
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun exitDumbMode() {
|
||||||
|
incModificationCount()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
connection.subscribe(FileTypeManager.TOPIC, object : FileTypeListener {
|
||||||
|
override fun beforeFileTypesChanged(event: FileTypeEvent) {
|
||||||
|
incModificationCount()
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun fileTypesChanged(event: FileTypeEvent) {
|
||||||
|
incModificationCount()
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
private val projectFileIndex = ProjectFileIndex.SERVICE.getInstance(project)
|
private val projectFileIndex = ProjectFileIndex.SERVICE.getInstance(project)
|
||||||
|
|||||||
Reference in New Issue
Block a user