CPP-11686 When selecting CMakeLists.txt after its creation force explicit search for it

After creation of CMakeLists.txt in root project directory all files in
project are invalidated. This prevents IdeView.selectElement() from
finding CMakeLists.txt and selecting it in project view.
This commit is contained in:
Semyon Kolton
2018-01-12 13:06:52 +03:00
parent 7175dcf533
commit 1e05cba730
@@ -69,7 +69,7 @@ public abstract class CreateFromTemplateActionBase extends AnAction {
PsiElement createdElement = dialog.create();
if (createdElement != null) {
elementCreated(dialog, createdElement);
view.selectElement(createdElement);
selectElement(createdElement, dir, view);
if (selectedTemplate.isLiveTemplateEnabled() && createdElement instanceof PsiFile) {
Map<String, String> defaultValues = getLiveTemplateDefaults(dataContext, ((PsiFile)createdElement));
startLiveTemplate((PsiFile)createdElement, notNull(defaultValues, Collections.emptyMap()));
@@ -128,6 +128,10 @@ public abstract class CreateFromTemplateActionBase extends AnAction {
protected void elementCreated(CreateFromTemplateDialog dialog, PsiElement createdElement) { }
protected void selectElement(@NotNull PsiElement element, @NotNull PsiDirectory directory, @NotNull IdeView view) {
view.selectElement(element);
}
@Nullable
protected Map<String, String> getLiveTemplateDefaults(DataContext dataContext, @NotNull PsiFile file) {
return null;