diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/projectActions/OpenSelectedProjectsAction.kt b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/projectActions/OpenSelectedProjectsAction.kt index d451d3865a26..70ee2582c818 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/projectActions/OpenSelectedProjectsAction.kt +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/projectActions/OpenSelectedProjectsAction.kt @@ -38,7 +38,10 @@ class OpenSelectedProjectsAction : RecentProjectsWelcomeScreenActionBase() { } if (ActionPlaces.WELCOME_SCREEN == event.place) { - presentation.isEnabledAndVisible = items.all { item -> item is RecentProjectItem || item is ProjectsGroupItem || item is ProviderRecentProjectItem } + presentation.isEnabledAndVisible = items.all { item -> + item is RecentProjectItem || item is ProjectsGroupItem || + item is ProviderRecentProjectItem && item.canOpenProject() + } when { items.size == 1 && items.first() is ProjectsGroupItem -> presentation.setText( IdeBundle.messagePointer("action.presentation.OpenSelectedProjectsAction.text.open.all.projects.in.group") diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/recentProjects/RecentProjectTreeItem.kt b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/recentProjects/RecentProjectTreeItem.kt index 9e2cc3f3d457..de2eddbe696d 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/recentProjects/RecentProjectTreeItem.kt +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/welcomeScreen/recentProjects/RecentProjectTreeItem.kt @@ -158,6 +158,10 @@ internal data class ProviderRecentProjectItem( val progressText: String? get() = recentProject.status.progressText val additionalActions: List get() = recentProject.additionalActions + fun canOpenProject() : Boolean { + return recentProject.canOpenProject() + } + fun openProject(actionEvent: AnActionEvent) { recentProject.openProject(actionEvent) }