plugin descriptor - store full information even if disabled (part 4)

GitOrigin-RevId: 39547c54df9c4980547c9b75fa0fd7c79c78eeee
This commit is contained in:
Vladimir Krivosheev
2021-05-06 12:38:47 +02:00
committed by intellij-monorepo-bot
parent e6737a0f20
commit c6fd07923a
53 changed files with 694 additions and 839 deletions

View File

@@ -8,7 +8,6 @@ import com.intellij.ide.highlighter.JavaFileType
import com.intellij.ide.plugins.DynamicPlugins
import com.intellij.ide.plugins.IdeaPluginDescriptorImpl
import com.intellij.ide.plugins.PluginManagerCore
import com.intellij.ide.plugins.loadFullDescriptor
import com.intellij.ide.util.PropertiesComponent
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.diagnostic.Logger
@@ -102,9 +101,8 @@ class IdeaDecompiler : ClassFileDecompilers.Light() {
val plugin = PluginManagerCore.getPlugin(id)
if (plugin is IdeaPluginDescriptorImpl) {
val descriptor = loadFullDescriptor(plugin)
if (DynamicPlugins.allowLoadUnloadWithoutRestart(descriptor)) {
val task = DynamicPlugins.getPluginUnloadingTask(descriptor, DynamicPlugins.UnloadPluginOptions(disable = true, save = false))
if (DynamicPlugins.allowLoadUnloadWithoutRestart(plugin)) {
val task = DynamicPlugins.getPluginUnloadingTask(plugin, DynamicPlugins.UnloadPluginOptions(disable = true, save = false))
ApplicationManager.getApplication().invokeLater(task)
}
}