diff --git a/java/java-impl/src/com/intellij/psi/util/proximity/KnownElementWeigher.java b/java/java-impl/src/com/intellij/psi/util/proximity/KnownElementWeigher.java index 34668dfa4689..99f205579376 100644 --- a/java/java-impl/src/com/intellij/psi/util/proximity/KnownElementWeigher.java +++ b/java/java-impl/src/com/intellij/psi/util/proximity/KnownElementWeigher.java @@ -75,6 +75,7 @@ public class KnownElementWeigher extends ProximityWeigher { @NonNls final String qname = element.getQualifiedName(); if (qname != null) { String pkg = StringUtil.getPackageName(qname); + if (qname.equals(CommonClassNames.JAVA_LANG_OBJECT)) return 5; if (pkg.equals("java.lang")) return 7; if (pkg.equals("java.util")) return 6; diff --git a/java/java-tests/testData/codeInsight/completion/normalSorting/DoNotPreferGetClass.java b/java/java-tests/testData/codeInsight/completion/normalSorting/DoNotPreferGetClass.java new file mode 100644 index 000000000000..3976c0152d34 --- /dev/null +++ b/java/java-tests/testData/codeInsight/completion/normalSorting/DoNotPreferGetClass.java @@ -0,0 +1,8 @@ +import java.util.HashMap; + +class Util { + void foo(int reaction, boolean rezet) { + new HashMap().gx + } + +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionOrderingTest.groovy b/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionOrderingTest.groovy index df62e225be87..8894e780230a 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionOrderingTest.groovy +++ b/java/java-tests/testSrc/com/intellij/codeInsight/completion/NormalCompletionOrderingTest.groovy @@ -329,5 +329,8 @@ public class NormalCompletionOrderingTest extends CompletionSortingTestCase { checkPreferredItems 0, 'reaction', 'rezet', 'return' } + public void testDoNotPreferGetClass() { + checkPreferredItems 0, 'get', 'getClass' + } } diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/completion/SmartTypeCompletionTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/completion/SmartTypeCompletionTest.java index 95d367151870..297881d9ac91 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/completion/SmartTypeCompletionTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/completion/SmartTypeCompletionTest.java @@ -795,7 +795,7 @@ public class SmartTypeCompletionTest extends LightFixtureCompletionTestCase { } public void testNoClassLiteral() throws Exception { doActionTest(); - assertStringItems("Object.class", "getClass", "forName", "forName"); + assertStringItems("Object.class", "forName", "forName", "getClass"); } public void testClassLiteralInAnno2() throws Throwable {