mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
java smart completion: don't show parameter info when no variants
it gets in the way the expected type information is anyway included into "No suggestions" popup
This commit is contained in:
+7
-20
@@ -20,13 +20,11 @@ import com.intellij.codeInsight.ExpectedTypesProvider;
|
||||
import com.intellij.codeInsight.TailType;
|
||||
import com.intellij.codeInsight.completion.scope.JavaCompletionProcessor;
|
||||
import com.intellij.codeInsight.daemon.impl.quickfix.ImportClassFix;
|
||||
import com.intellij.codeInsight.hint.ShowParameterInfoHandler;
|
||||
import com.intellij.codeInsight.lookup.*;
|
||||
import com.intellij.featureStatistics.FeatureUsageTracker;
|
||||
import com.intellij.lang.LangBundle;
|
||||
import com.intellij.lang.java.JavaLanguage;
|
||||
import com.intellij.openapi.actionSystem.IdeActions;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.editor.Document;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
@@ -603,27 +601,16 @@ public class JavaCompletionContributor extends CompletionContributor {
|
||||
final String ad = advertise(parameters);
|
||||
final String suffix = ad == null ? "" : "; " + StringUtil.decapitalize(ad);
|
||||
if (parameters.getCompletionType() == CompletionType.SMART) {
|
||||
if (!ApplicationManager.getApplication().isUnitTestMode()) {
|
||||
PsiExpression expression = PsiTreeUtil.getContextOfType(parameters.getPosition(), PsiExpression.class, true);
|
||||
if (expression instanceof PsiLiteralExpression) {
|
||||
return LangBundle.message("completion.no.suggestions") + suffix;
|
||||
}
|
||||
|
||||
final Project project = parameters.getPosition().getProject();
|
||||
final PsiFile file = parameters.getOriginalFile();
|
||||
|
||||
PsiExpression expression = PsiTreeUtil.getContextOfType(parameters.getPosition(), PsiExpression.class, true);
|
||||
if (expression != null && expression.getParent() instanceof PsiExpressionList) {
|
||||
int lbraceOffset = expression.getParent().getTextRange().getStartOffset();
|
||||
ShowParameterInfoHandler.invoke(project, editor, file, lbraceOffset, null);
|
||||
}
|
||||
|
||||
if (expression instanceof PsiLiteralExpression) {
|
||||
if (expression instanceof PsiInstanceOfExpression) {
|
||||
final PsiInstanceOfExpression instanceOfExpression = (PsiInstanceOfExpression)expression;
|
||||
if (PsiTreeUtil.isAncestor(instanceOfExpression.getCheckType(), parameters.getPosition(), false)) {
|
||||
return LangBundle.message("completion.no.suggestions") + suffix;
|
||||
}
|
||||
|
||||
if (expression instanceof PsiInstanceOfExpression) {
|
||||
final PsiInstanceOfExpression instanceOfExpression = (PsiInstanceOfExpression)expression;
|
||||
if (PsiTreeUtil.isAncestor(instanceOfExpression.getCheckType(), parameters.getPosition(), false)) {
|
||||
return LangBundle.message("completion.no.suggestions") + suffix;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
final Set<PsiType> expectedTypes = JavaCompletionUtil.getExpectedTypes(parameters);
|
||||
|
||||
Reference in New Issue
Block a user