IJPL-210281 [run dashboard]: remove nodes for recently run configurations whose type has been removed from services

GitOrigin-RevId: 088fd068b656e8ec11ae6de9464024dff7a2cfb3
This commit is contained in:
Nikita Katkov
2026-02-05 22:27:07 +00:00
committed by intellij-monorepo-bot
parent 64cce9546b
commit 985077423b
2 changed files with 4 additions and 4 deletions
@@ -573,7 +573,8 @@ public final class RunDashboardManagerImpl implements RunDashboardManager, Persi
RunDashboardService oldService = oldServices.getFirst();
RunContentDescriptorId descriptorId = oldService.getDescriptorId();
RunContentDescriptor descriptor = descriptorId == null ? null : getDescriptorById(descriptorId, myProject);
if (descriptor != null && !settingsList.contains(oldService.getConfigurationSettings())) {
var isAcceptableType = myState.configurationTypes.contains(oldService.getConfigurationSettings().getType().getId());
if (descriptor != null && !settingsList.contains(oldService.getConfigurationSettings()) && isAcceptableType) {
if (!updateServiceSettings(myProject, result, oldServices)) {
result.add(oldServices);
}
@@ -2,6 +2,7 @@
package com.intellij.platform.execution.serviceView
import com.intellij.execution.ExecutionBundle
import com.intellij.execution.dashboard.RunDashboardManagerProxy
import com.intellij.execution.services.ServiceViewContributor
import com.intellij.execution.services.ServiceViewManager
import com.intellij.execution.services.ServiceViewToolWindowDescriptor
@@ -170,9 +171,7 @@ internal class ConfigureServicesDialog(private val project: Project, settings: S
override fun doOKAction() {
(ServiceViewManager.getInstance(project) as ServiceViewManagerImpl).setExcludedContributors(excludedServicesTree.getServices())
ServiceViewCoroutineScopeProvider.getInstance(project).cs.launch {
ServiceViewRpc.getInstance().saveConfigurationTypes(project.projectId(), includedServicesTree.getTypes())
}
RunDashboardManagerProxy.getInstance(project).types = includedServicesTree.getTypes()
super.doOKAction()
}
}