From 03a3ab87d2ee244a3cb11fc5d603de925d2fed47 Mon Sep 17 00:00:00 2001 From: Anton Makeev Date: Wed, 16 May 2018 17:15:31 +0200 Subject: [PATCH] CPP-13007 When 'Import from Existing Sources' is pointed to an existing CMakeLists.txt, it should offer opening the project --- .../intellij/projectImport/ProjectOpenProcessor.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/platform/platform-api/src/com/intellij/projectImport/ProjectOpenProcessor.java b/platform/platform-api/src/com/intellij/projectImport/ProjectOpenProcessor.java index 0ddee9065e67..6ce3e5225dbc 100644 --- a/platform/platform-api/src/com/intellij/projectImport/ProjectOpenProcessor.java +++ b/platform/platform-api/src/com/intellij/projectImport/ProjectOpenProcessor.java @@ -49,8 +49,17 @@ public abstract class ProjectOpenProcessor { @Nullable public static ProjectOpenProcessor getImportProvider(VirtualFile file) { + return getImportProvider(file, false); + } + + /** + * @param onlyIfExistingProjectFile when true, doesn't return 'generic' providers that can open any non-project directory/text file + * (e.g. PlatformProjectOpenProcessor) + */ + @Nullable + public static ProjectOpenProcessor getImportProvider(VirtualFile file, boolean onlyIfExistingProjectFile) { for (ProjectOpenProcessor provider : Extensions.getExtensions(EXTENSION_POINT_NAME)) { - if (provider.canOpenProject(file)) { + if (provider.canOpenProject(file) && (!onlyIfExistingProjectFile || provider.isProjectFile(file))) { return provider; } }