diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/PluginManagerConfigurablePanel.java b/platform/platform-impl/src/com/intellij/ide/plugins/PluginManagerConfigurablePanel.java index db268e82c384..eb014fe3e3f3 100644 --- a/platform/platform-impl/src/com/intellij/ide/plugins/PluginManagerConfigurablePanel.java +++ b/platform/platform-impl/src/com/intellij/ide/plugins/PluginManagerConfigurablePanel.java @@ -1411,6 +1411,7 @@ public final class PluginManagerConfigurablePanel implements Disposable { .loadErrors(myPluginModelFacade.getModel().mySessionId.toString(), ContainerUtil.map(descriptors, PluginUiModel::getPluginId)); result.getPreloadedModel().setErrors(MyPluginModel.getErrors(errors)); + result.getPreloadedModel().setPluginInstallationStates(UiPluginManager.getInstance().getInstallationStatesSync()); PluginManagerUsageCollector.performInstalledTabSearch( ProjectUtil.getActiveProject(), parser, result.getModels(), searchIndex, null); diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/newui/ListPluginComponent.java b/platform/platform-impl/src/com/intellij/ide/plugins/newui/ListPluginComponent.java index 4d0a463f998e..ff7e97b47bb5 100644 --- a/platform/platform-impl/src/com/intellij/ide/plugins/newui/ListPluginComponent.java +++ b/platform/platform-impl/src/com/intellij/ide/plugins/newui/ListPluginComponent.java @@ -546,7 +546,8 @@ public final class ListPluginComponent extends JPanel { } public void setUpdateDescriptor(@Nullable PluginUiModel descriptor) { - if (myMarketplace && myInstalledDescriptorForMarketplace == null) { + if (myMarketplace && myInstalledDescriptorForMarketplace == null || + (descriptor != null && myModelFacade.isUninstalled(descriptor.getPluginId()))) { return; } if (myUpdateDescriptor == null && descriptor == null) { diff --git a/platform/platform-impl/src/com/intellij/ide/plugins/newui/MyPluginModel.kt b/platform/platform-impl/src/com/intellij/ide/plugins/newui/MyPluginModel.kt index 4042cc4b5851..4d2b3f8f1a49 100644 --- a/platform/platform-impl/src/com/intellij/ide/plugins/newui/MyPluginModel.kt +++ b/platform/platform-impl/src/com/intellij/ide/plugins/newui/MyPluginModel.kt @@ -672,9 +672,8 @@ open class MyPluginModel(project: Project?) : InstalledPluginsTableModel(project val installedDescriptors: MutableList get() { - checkNotNull(myInstalledPanel) - - return myInstalledPanel!! + val panel = myInstalledPanel ?: return mutableListOf() + return panel .groups .filterNot { it.excluded } .flatMap { it.plugins }