mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-05-06 05:10:22 +07:00
add single import: ensure current ref to import is taken into account when check the limit (IDEA-127949)
This commit is contained in:
@@ -107,7 +107,7 @@ public class PsiReferenceExpressionImpl extends ExpressionPsiElement implements
|
||||
assert importList != null;
|
||||
final String qualifiedName = qualifierClass.getQualifiedName();
|
||||
final List<PsiJavaCodeReferenceElement> refs = getImportsFromClass(importList, qualifiedName);
|
||||
if (refs.size() < JavaCodeStyleSettingsFacade.getInstance(qualifierClass.getProject()).getNamesCountToUseImportOnDemand() ||
|
||||
if (refs.size() + 1 < JavaCodeStyleSettingsFacade.getInstance(qualifierClass.getProject()).getNamesCountToUseImportOnDemand() ||
|
||||
JavaCodeStyleManager.getInstance(qualifierClass.getProject()).hasConflictingOnDemandImport((PsiJavaFile)importList.getContainingFile(), qualifierClass, staticName)) {
|
||||
importList.add(JavaPsiFacade.getInstance(qualifierClass.getProject()).getElementFactory().createImportStaticStatement(qualifierClass, staticName));
|
||||
} else {
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
import static java.lang.Math.abs;
|
||||
import static java.lang.Math.sin;
|
||||
|
||||
class ImportTest {
|
||||
{
|
||||
abs(-0.5);
|
||||
sin(0.5);
|
||||
Math.ma<caret>x(1, 2);
|
||||
Math.min(1, 2);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import static java.lang.Math.*;
|
||||
|
||||
class ImportTest {
|
||||
{
|
||||
abs(-0.5);
|
||||
sin(0.5);
|
||||
ma<caret>x(1, 2);
|
||||
Math.min(1, 2);
|
||||
}
|
||||
}
|
||||
@@ -61,6 +61,10 @@ public class AddSingleStaticImportActionTest extends JavaCodeInsightFixtureTestC
|
||||
doTest("Add import for 'foo.Class1.Inner1'");
|
||||
}
|
||||
|
||||
public void testSingleStaticReferencesUntilCollapsedToDiamond() {
|
||||
doTest("Add static import for 'java.lang.Math.max'");
|
||||
}
|
||||
|
||||
public void testDisabledInsideParameterizedReference() {
|
||||
myFixture.addClass("package foo; " +
|
||||
"public class Class1 {" +
|
||||
|
||||
Reference in New Issue
Block a user