separate "? extends/super" completion

This commit is contained in:
peter
2017-04-05 15:46:52 +02:00
parent d0fe2228c7
commit d60f2e865e
2 changed files with 11 additions and 12 deletions
@@ -231,12 +231,12 @@ public class JavaCompletionContributor extends CompletionContributor {
return;
}
if (position instanceof PsiIdentifier) {
addIdentifierVariants(parameters, position, result, session, matcher);
if (JavaKeywordCompletion.addWildcardExtendsSuper(result, position)) {
return;
}
if (JavaMemberNameCompletionContributor.INSIDE_TYPE_PARAMS_PATTERN.accepts(position)) {
return;
if (position instanceof PsiIdentifier) {
addIdentifierVariants(parameters, position, result, session, matcher);
}
Set<String> usedWords = addReferenceVariants(parameters, result, session);
@@ -286,10 +286,6 @@ public class JavaKeywordCompletion {
return;
}
if (addWildcardExtendsSuper()) {
return;
}
addFinal();
boolean statementPosition = isStatementPosition(myPosition);
@@ -324,10 +320,13 @@ public class JavaKeywordCompletion {
addExtendsImplements();
}
private boolean addWildcardExtendsSuper() {
if (JavaMemberNameCompletionContributor.INSIDE_TYPE_PARAMS_PATTERN.accepts(myPosition)) {
addKeyword(new OverrideableSpace(createKeyword(PsiKeyword.EXTENDS), TailType.HUMBLE_SPACE_BEFORE_WORD));
addKeyword(new OverrideableSpace(createKeyword(PsiKeyword.SUPER), TailType.HUMBLE_SPACE_BEFORE_WORD));
static boolean addWildcardExtendsSuper(CompletionResultSet result, PsiElement position) {
if (JavaMemberNameCompletionContributor.INSIDE_TYPE_PARAMS_PATTERN.accepts(position)) {
for (String keyword : ContainerUtil.ar(PsiKeyword.EXTENDS, PsiKeyword.SUPER)) {
if (keyword.startsWith(result.getPrefixMatcher().getPrefix())) {
result.addElement(new OverrideableSpace(BasicExpressionCompletionContributor.createKeywordLookupItem(position, keyword), TailType.HUMBLE_SPACE_BEFORE_WORD));
}
}
return true;
}
return false;