IDEA-59350 Double completion variance for static imported fields

This commit is contained in:
peter.gromov
2010-10-18 21:36:50 +04:00
parent 493e3b7e89
commit d2bd9ea793
2 changed files with 21 additions and 1 deletions
@@ -876,9 +876,14 @@ public class JavaCompletionUtil {
boolean mayHighlight = qualifierType != null && (castedQualifierType == null || !qualifierType.isAssignableFrom(castedQualifierType));
final Set<PsiMember> mentioned = new THashSet<PsiMember>();
for (CompletionElement completionElement : plainResults) {
LookupElement item = createLookupElement(completionElement, qualifierType);
if (item != null) {
final Object o = item.getObject();
if (o instanceof PsiMember) {
mentioned.add((PsiMember)o);
}
set.add(mayHighlight ? highlightIfNeeded(qualifierType, item) : item);
}
}
@@ -888,7 +893,7 @@ public class JavaCompletionUtil {
memberProcessor.processMembersOfRegisteredClasses(matcher, new PairConsumer<PsiMember, PsiClass>() {
@Override
public void consume(PsiMember member, PsiClass psiClass) {
if (processor.satisfies(member, ResolveState.initial())) {
if (!mentioned.contains(member) && processor.satisfies(member, ResolveState.initial())) {
set.add(memberProcessor.createLookupElement(member, psiClass, true));
}
}