mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
don't present 'new' twice
This commit is contained in:
@@ -20,7 +20,6 @@ import com.intellij.codeInsight.TailTypes;
|
||||
import com.intellij.codeInsight.completion.util.ParenthesesInsertHandler;
|
||||
import com.intellij.codeInsight.lookup.LookupElement;
|
||||
import com.intellij.codeInsight.lookup.LookupItem;
|
||||
import com.intellij.codeInsight.lookup.TailTypeDecorator;
|
||||
import com.intellij.patterns.ElementPattern;
|
||||
import com.intellij.patterns.PsiElementPattern;
|
||||
import com.intellij.patterns.PsiJavaElementPattern;
|
||||
@@ -577,20 +576,17 @@ public class JavaCompletionData extends JavaAwareCompletionData{
|
||||
not(
|
||||
or(psiElement(PsiTypeCastExpression.class),
|
||||
psiElement(PsiSwitchLabelStatement.class),
|
||||
psiElement(PsiExpressionStatement.class).withParent(psiElement(PsiCodeBlock.class).withParent(PsiSwitchStatement.class))
|
||||
psiElement(PsiExpressionStatement.class)
|
||||
)
|
||||
)
|
||||
)),
|
||||
not(psiElement().afterLeaf("."))
|
||||
);
|
||||
if (exprKeywords.accepts(position)) {
|
||||
result.addElement(TailTypeDecorator.withTail(createKeyword(position, PsiKeyword.NEW), TailType.SPACE));
|
||||
|
||||
if (!psiElement().withParent(psiElement(PsiReferenceExpression.class).withParent(PsiExpressionStatement.class)).accepts(position)) {
|
||||
result.addElement(createKeyword(position, PsiKeyword.NULL));
|
||||
result.addElement(createKeyword(position, PsiKeyword.TRUE));
|
||||
result.addElement(createKeyword(position, PsiKeyword.FALSE));
|
||||
}
|
||||
result.addElement(createKeyword(position, PsiKeyword.NEW));
|
||||
result.addElement(createKeyword(position, PsiKeyword.NULL));
|
||||
result.addElement(createKeyword(position, PsiKeyword.TRUE));
|
||||
result.addElement(createKeyword(position, PsiKeyword.FALSE));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
@@ -807,6 +807,9 @@ public class NormalCompletionTest extends LightFixtureCompletionTestCase {
|
||||
assertTrue 'do' in strings
|
||||
assertTrue 'new' in strings
|
||||
assertTrue 'try' in strings
|
||||
|
||||
strings.remove 'new'
|
||||
assertFalse 'new' in strings
|
||||
}
|
||||
|
||||
public void testExpressionKeywords() {
|
||||
|
||||
Reference in New Issue
Block a user