mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-26 11:37:34 +07:00
constructor completion: insert the chosen constructor and position the caret accordingly (IDEA-CR-14717)
This commit is contained in:
+3
-1
@@ -214,9 +214,11 @@ public class ConstructorInsertHandler implements InsertHandler<LookupElementDeco
|
||||
return false;
|
||||
}
|
||||
|
||||
PsiMethod constructor = JavaConstructorCallElement.extractCalledConstructor(delegate);
|
||||
|
||||
final PsiElement place = context.getFile().findElementAt(context.getStartOffset());
|
||||
assert place != null;
|
||||
boolean hasParams = hasConstructorParameters(psiClass, place);
|
||||
boolean hasParams = constructor != null ? constructor.getParameterList().getParametersCount() > 0 : hasConstructorParameters(psiClass, place);
|
||||
|
||||
JavaCompletionUtil.insertParentheses(context, delegate, false, hasParams, forAnonymous);
|
||||
|
||||
|
||||
+6
-2
@@ -49,8 +49,6 @@ public class JavaConstructorCallElement extends LookupElementDecorator<LookupEle
|
||||
myConstructor = constructor;
|
||||
myType = type;
|
||||
mySubstitutor = myType.resolveGenerics().getSubstitutor();
|
||||
|
||||
markClassItemWrapped(classItem);
|
||||
}
|
||||
|
||||
private void markClassItemWrapped(@NotNull LookupElement classItem) {
|
||||
@@ -62,6 +60,12 @@ public class JavaConstructorCallElement extends LookupElementDecorator<LookupEle
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleInsert(InsertionContext context) {
|
||||
markClassItemWrapped(getDelegate());
|
||||
super.handleInsert(context);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public PsiMethod getObject() {
|
||||
|
||||
Reference in New Issue
Block a user