From 063edc65c7faa13ed0f056646fe7b5249f50fcd3 Mon Sep 17 00:00:00 2001 From: Konstantin Aleev Date: Mon, 31 Jul 2023 20:23:38 +0200 Subject: [PATCH] [services] IDEA-326824 send initial run dashboard reset event later GitOrigin-RevId: ddb6e6581d902b8ad01879978135afa2e70e3291 --- .../dashboard/RunDashboardManagerImpl.java | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/execution/dashboard/RunDashboardManagerImpl.java b/platform/lang-impl/src/com/intellij/execution/dashboard/RunDashboardManagerImpl.java index 89143d3a8445..84350041e877 100644 --- a/platform/lang-impl/src/com/intellij/execution/dashboard/RunDashboardManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/execution/dashboard/RunDashboardManagerImpl.java @@ -24,6 +24,7 @@ import com.intellij.openapi.actionSystem.ActionGroup; import com.intellij.openapi.actionSystem.ActionManager; import com.intellij.openapi.actionSystem.ActionPlaces; import com.intellij.openapi.actionSystem.ActionToolbar; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.components.PersistentStateComponent; import com.intellij.openapi.components.State; import com.intellij.openapi.components.Storage; @@ -762,9 +763,7 @@ public final class RunDashboardManagerImpl implements RunDashboardManager, Persi myTypes.addAll(enableByDefaultTypes); if (!myTypes.isEmpty()) { loadHiddenConfigurations(); - syncConfigurations(); - initServiceContentListeners(); - updateDashboard(true); + initTypes(); } } @@ -784,13 +783,22 @@ public final class RunDashboardManagerImpl implements RunDashboardManager, Persi } } + private void initTypes() { + syncConfigurations(); + initServiceContentListeners(); + ApplicationManager.getApplication().executeOnPooledThread(() -> { + if (!myProject.isDisposed()) { + updateDashboard(true); + } + }); + } + @Override public void noStateLoaded() { myTypes.clear(); myTypes.addAll(getEnableByDefaultTypes()); if (!myTypes.isEmpty()) { - syncConfigurations(); - initServiceContentListeners(); + initTypes(); } }