diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/LiveTemplateLookupActionProvider.java b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/LiveTemplateLookupActionProvider.java index c3bd8034e63b..05fcba409942 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/LiveTemplateLookupActionProvider.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/LiveTemplateLookupActionProvider.java @@ -4,6 +4,7 @@ import com.intellij.codeInsight.lookup.Lookup; import com.intellij.codeInsight.lookup.LookupActionProvider; import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.codeInsight.lookup.LookupElementAction; +import com.intellij.icons.AllIcons; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.ShowSettingsUtil; import com.intellij.openapi.project.Project; @@ -13,7 +14,7 @@ import com.intellij.util.PlatformIcons; /** * @author peter */ -public class LiveTemplateLookupActionProvider implements LookupActionProvider{ +public class LiveTemplateLookupActionProvider implements LookupActionProvider { @Override public void fillActions(LookupElement element, final Lookup lookup, Consumer consumer) { if (element instanceof LiveTemplateLookupElement) { @@ -41,6 +42,22 @@ public class LiveTemplateLookupActionProvider implements LookupActionProvider{ return Result.HIDE_LOOKUP; } }); + + final TemplateImpl templateFromSettings = TemplateSettings.getInstance().getTemplate(template.getKey(), template.getGroupName()); + if (templateFromSettings != null) { + consumer.consume(new LookupElementAction(AllIcons.Actions.Delete, String.format("Disable '%s' template", template.getKey())) { + @Override + public Result performLookupAction() { + ApplicationManager.getApplication().invokeLater(new Runnable() { + @Override + public void run() { + templateFromSettings.setDeactivated(true); + } + }); + return Result.HIDE_LOOKUP; + } + }); + } } } }