From 2f36f24ee17d312adfe706539dc2c94b8ee21c7b Mon Sep 17 00:00:00 2001 From: peter Date: Wed, 19 Feb 2014 10:34:01 +0100 Subject: [PATCH] enable show.live.templates.in.completion by default --- .../PostfixTemplatesCompletionProvider.java | 4 ++-- .../completion/TemplatesCompletionTest.java | 20 ++++--------------- .../LiveTemplateCompletionContributor.java | 12 ++++++++++- .../src/misc/registry.properties | 2 +- 4 files changed, 18 insertions(+), 20 deletions(-) diff --git a/java/java-impl/src/com/intellij/codeInsight/template/postfix/completion/PostfixTemplatesCompletionProvider.java b/java/java-impl/src/com/intellij/codeInsight/template/postfix/completion/PostfixTemplatesCompletionProvider.java index 386718eed332..d5e98c4d5e55 100644 --- a/java/java-impl/src/com/intellij/codeInsight/template/postfix/completion/PostfixTemplatesCompletionProvider.java +++ b/java/java-impl/src/com/intellij/codeInsight/template/postfix/completion/PostfixTemplatesCompletionProvider.java @@ -19,10 +19,10 @@ import com.intellij.codeInsight.completion.CompletionParameters; import com.intellij.codeInsight.completion.CompletionProvider; import com.intellij.codeInsight.completion.CompletionResultSet; import com.intellij.codeInsight.template.CustomTemplateCallback; +import com.intellij.codeInsight.template.impl.LiveTemplateCompletionContributor; import com.intellij.codeInsight.template.postfix.settings.PostfixTemplatesSettings; import com.intellij.codeInsight.template.postfix.templates.PostfixLiveTemplate; import com.intellij.codeInsight.template.postfix.templates.PostfixTemplate; -import com.intellij.openapi.util.registry.Registry; import com.intellij.patterns.StandardPatterns; import com.intellij.psi.PsiFile; import com.intellij.util.ProcessingContext; @@ -33,7 +33,7 @@ import static com.intellij.codeInsight.template.postfix.completion.PostfixTempla class PostfixTemplatesCompletionProvider extends CompletionProvider { @Override protected void addCompletions(@NotNull CompletionParameters parameters, ProcessingContext context, @NotNull CompletionResultSet result) { - if (!isCompletionEnabled(parameters) || Registry.is("show.live.templates.in.completion")) { + if (!isCompletionEnabled(parameters) || LiveTemplateCompletionContributor.shouldShowAllTemplates()) { /** * disabled or covered with {@link com.intellij.codeInsight.template.impl.LiveTemplateCompletionContributor} */ diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/template/postfix/completion/TemplatesCompletionTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/template/postfix/completion/TemplatesCompletionTest.java index 26de5c1bd0fe..d7009d0d4ad0 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/template/postfix/completion/TemplatesCompletionTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/template/postfix/completion/TemplatesCompletionTest.java @@ -19,30 +19,18 @@ import com.intellij.JavaTestUtil; import com.intellij.codeInsight.completion.CompletionAutoPopupTestCase; import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.codeInsight.lookup.impl.LookupImpl; +import com.intellij.codeInsight.template.impl.LiveTemplateCompletionContributor; import com.intellij.codeInsight.template.postfix.settings.PostfixTemplatesSettings; import com.intellij.codeInsight.template.postfix.templates.*; -import com.intellij.openapi.util.registry.Registry; -import com.intellij.openapi.util.registry.RegistryValue; import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; public class TemplatesCompletionTest extends CompletionAutoPopupTestCase { - private boolean oldRegistryValue; - - @Override - public void setUp() { - super.setUp(); - RegistryValue registryValue = Registry.get("show.live.templates.in.completion"); - oldRegistryValue = registryValue.asBoolean(); - registryValue.setValue(false); - } - @Override public void tearDown() throws Exception { - RegistryValue registryValue = Registry.get("show.live.templates.in.completion"); - registryValue.setValue(oldRegistryValue); + LiveTemplateCompletionContributor.ourShowTemplatesInTests = false; PostfixTemplatesSettings settings = PostfixTemplatesSettings.getInstance(); assertNotNull(settings); @@ -53,13 +41,13 @@ public class TemplatesCompletionTest extends CompletionAutoPopupTestCase { } public void testSimpleCompletionList() { - Registry.get("show.live.templates.in.completion").setValue(true); + LiveTemplateCompletionContributor.ourShowTemplatesInTests = true; doAutoPopupTest("ins", InstanceofExpressionPostfixTemplate.class); } public void testAutopopupWithEnabledLiveTemplatesInCompletion() { - Registry.get("show.live.templates.in.completion").setValue(true); + LiveTemplateCompletionContributor.ourShowTemplatesInTests = true; configureByFile(); type("instanceof"); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/LiveTemplateCompletionContributor.java b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/LiveTemplateCompletionContributor.java index 295e6e11f7cd..9b3e29783b42 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/LiveTemplateCompletionContributor.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/LiveTemplateCompletionContributor.java @@ -20,6 +20,7 @@ import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.codeInsight.template.CustomLiveTemplate; import com.intellij.codeInsight.template.CustomTemplateCallback; import com.intellij.codeInsight.template.TemplateContextType; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.util.Condition; import com.intellij.openapi.util.Ref; @@ -41,6 +42,15 @@ import static com.intellij.codeInsight.template.impl.ListTemplatesHandler.listAp * @author peter */ public class LiveTemplateCompletionContributor extends CompletionContributor { + public static boolean ourShowTemplatesInTests = false; + + public static boolean shouldShowAllTemplates() { + if (ApplicationManager.getApplication().isUnitTestMode()) { + return ourShowTemplatesInTests; + } + return Registry.is("show.live.templates.in.completion"); + } + public LiveTemplateCompletionContributor() { extend(CompletionType.BASIC, PlatformPatterns.psiElement(), new CompletionProvider() { @Override @@ -84,7 +94,7 @@ public class LiveTemplateCompletionContributor extends CompletionContributor { @SuppressWarnings("MethodMayBeStatic") //for Kotlin protected boolean showAllTemplates() { - return Registry.is("show.live.templates.in.completion"); + return shouldShowAllTemplates(); } private static void ensureTemplatesShown(Ref templatesShown, diff --git a/platform/platform-resources-en/src/misc/registry.properties b/platform/platform-resources-en/src/misc/registry.properties index fd9d8fc883a6..0ffc84d49a47 100644 --- a/platform/platform-resources-en/src/misc/registry.properties +++ b/platform/platform-resources-en/src/misc/registry.properties @@ -224,7 +224,7 @@ ide.mac.fix.accessibleLeak=true projectView.showHierarchyErrors=true projectView.hide.dot.idea=true -show.live.templates.in.completion=false +show.live.templates.in.completion=true ide.completion.autopopup.select.live.templates=true ide.completion.autopopup.choose.by.enter=true documentation.component.editor.font=false