summaryrefslogtreecommitdiff
path: root/java/java-impl/src/com/intellij/psi/filters/getters/ClassLiteralGetter.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/java-impl/src/com/intellij/psi/filters/getters/ClassLiteralGetter.java')
-rw-r--r--java/java-impl/src/com/intellij/psi/filters/getters/ClassLiteralGetter.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/java/java-impl/src/com/intellij/psi/filters/getters/ClassLiteralGetter.java b/java/java-impl/src/com/intellij/psi/filters/getters/ClassLiteralGetter.java
index a8a632154132..b1b4f674cda7 100644
--- a/java/java-impl/src/com/intellij/psi/filters/getters/ClassLiteralGetter.java
+++ b/java/java-impl/src/com/intellij/psi/filters/getters/ClassLiteralGetter.java
@@ -33,9 +33,12 @@ public class ClassLiteralGetter {
public static void addCompletions(@NotNull final JavaSmartCompletionParameters parameters,
@NotNull Consumer<LookupElement> result, final PrefixMatcher matcher) {
- PsiType expectedType = parameters.getExpectedType();
+ PsiType expectedType = parameters.getDefaultType();
if (!InheritanceUtil.isInheritor(expectedType, CommonClassNames.JAVA_LANG_CLASS)) {
- return;
+ expectedType = parameters.getExpectedType();
+ if (!InheritanceUtil.isInheritor(expectedType, CommonClassNames.JAVA_LANG_CLASS)) {
+ return;
+ }
}
PsiType classParameter = PsiUtil.substituteTypeParameter(expectedType, CommonClassNames.JAVA_LANG_CLASS, 0, false);