From 0c0676da9768e8f52b76d8cf5cd8434d8db8fd23 Mon Sep 17 00:00:00 2001 From: peter Date: Wed, 14 Apr 2010 16:51:31 +0400 Subject: [PATCH] less hacks in DefaultInsertHandler/overwriting argument list stuff --- .../completion/ConstructorInsertHandler.java | 5 ++--- .../codeInsight/completion/DefaultInsertHandler.java | 10 ---------- .../completion/JavaPsiClassReferenceElement.java | 2 +- .../completion/JavaSmartCompletionContributor.java | 2 -- 4 files changed, 3 insertions(+), 16 deletions(-) diff --git a/java/java-impl/src/com/intellij/codeInsight/completion/ConstructorInsertHandler.java b/java/java-impl/src/com/intellij/codeInsight/completion/ConstructorInsertHandler.java index 146cbcf41f23..38c0516be775 100644 --- a/java/java-impl/src/com/intellij/codeInsight/completion/ConstructorInsertHandler.java +++ b/java/java-impl/src/com/intellij/codeInsight/completion/ConstructorInsertHandler.java @@ -36,10 +36,11 @@ class ConstructorInsertHandler implements InsertHandler item) { @SuppressWarnings({"unchecked"}) final LookupItem delegate = item.getDelegate(); - delegate.handleInsert(context); insertParentheses(context, delegate, delegate.getObject()); + DefaultInsertHandler.addImportForItem(context.getFile(), context.getStartOffset(), delegate); + final PsiElement position = SmartCompletionDecorator.getPosition(context, delegate); final PsiExpression enclosing = PsiTreeUtil.getContextOfType(position, PsiExpression.class, true); @@ -66,8 +67,6 @@ class ConstructorInsertHandler implements InsertHandler { public static final InsertHandler JAVA_CLASS_INSERT_HANDLER = new InsertHandler() { public void handleInsert(final InsertionContext context, final JavaPsiClassReferenceElement item) { if (completingRawConstructor(context, item)) { - DefaultInsertHandler.NO_TAIL_PARENS_HANDLER.handleInsert(context, item); ConstructorInsertHandler.insertParentheses(context, item, item.getObject()); + DefaultInsertHandler.addImportForItem(context.getFile(), context.getStartOffset(), item); } else { new DefaultInsertHandler().handleInsert(context, item); } diff --git a/java/java-impl/src/com/intellij/codeInsight/completion/JavaSmartCompletionContributor.java b/java/java-impl/src/com/intellij/codeInsight/completion/JavaSmartCompletionContributor.java index 71bc14bb7251..096d07f863bb 100644 --- a/java/java-impl/src/com/intellij/codeInsight/completion/JavaSmartCompletionContributor.java +++ b/java/java-impl/src/com/intellij/codeInsight/completion/JavaSmartCompletionContributor.java @@ -174,7 +174,6 @@ public class JavaSmartCompletionContributor extends CompletionContributor { JavaCompletionUtil.setShowFQN((LookupItem)item); } else { } - ((LookupItem) item).setInsertHandler(DefaultInsertHandler.NO_TAIL_PARENS_HANDLER); result.addElement(decorate(LookupElementDecorator.withInsertHandler((LookupItem)item, ConstructorInsertHandler.INSTANCE), infos)); } } @@ -578,7 +577,6 @@ public class JavaSmartCompletionContributor extends CompletionContributor { item.setAttribute(LookupItem.INDICATE_ANONYMOUS, ""); } - item.setInsertHandler(DefaultInsertHandler.NO_TAIL_PARENS_HANDLER); result.addElement(decorate(type instanceof PsiClassType ? LookupElementDecorator.withInsertHandler(item, ConstructorInsertHandler.INSTANCE) : item, infos)); }